WordPress
Vorlagenhierarchie
Suche…
Bemerkungen
Plugins zum Debuggen in WordPress:
Einführung
Eines der wichtigsten Dinge, die Sie lernen sollten, wenn Sie ein WordPress-Theme erstellen, ist die Hierarchie der WordPress-Vorlagen für Designs. Die Vorlagenhierarchie definiert, welche Vorlagendatei für jede Anforderung in welcher Reihenfolge geladen wird. Wenn die erste Vorlage in der Hierarchie nicht vorhanden ist, versucht WordPress, die nächste Vorlage usw. zu laden, bis Sie in index.php
enden.
Um die Vorlagenhierarchie detailliert zu beschreiben, ist es natürlich am besten, ein Bild mit der vollen Struktur zu verwenden:
Die Vorlagenhierarchie beginnt mit den primären Seitentypen wie Archiv, einzelne Seite oder Startseite und den Untertypen wie Autorenarchiv, Tag-Archiv, Seite oder Blogbeitrag.
Danach finden wir die tatsächlichen Vorlagen, die geladen werden. Erstens gibt es die spezifischsten Vorlagen, die Slugs oder IDs verwenden, um auf bestimmte Archivtypen oder Beiträge zu zielen.
Zum Beispiel category-$slug.php
, die nur die Kategorie mit einem bestimmten Slug Ziele, beispielsweise category-books.php
würde nur für die Kategorie mit der Schnecke verwendet wird book
. Ein anderes Beispiel ist page-$id.php
, das nur auf eine Seite mit einer bestimmten ID page-41.php
Zum Beispiel würde page-41.php
nur auf die Seite mit der ID 41 page-41.php
.
Nach den Templates, die auf bestimmte Typen oder Posts page.php
gelangen wir zu den generischen page.php
, wie beispielsweise archive.php für alle Archivseiten oder page.php
für alle Seiten. Denken Sie jedoch daran, dass diese nur verwendet werden, wenn die aktuelle Seite mit keiner der Vorlagen übereinstimmt, die in der Hierarchie höher liegen.
Wenn WordPress keine passenden Vorlagen im Vorlagenverzeichnis finden konnte, ist der letzte Fallback immer die Datei " index.php
ist die einzige erforderliche Vorlagendatei in einem WordPress-Design.
Debuggen
Beim Debuggen der Hiearchy kann man sich leicht verirren. Sie können den integrierten Befehl debug_backtrace
PHP debug_backtrace
.
Fügen Sie das nächste Snippet in eine Vorlage ein, die Sie debuggen möchten, und zeigen Sie die generierte Seite an:
<!--
<?php print_r( debug_backtrace() ) ?>
-->