Verschiedene Vorlagen für Eltern- und Kinderkategorien / Taxonomien

Ich würde gerne wissen, was der beste Weg ist, um eine andere Vorlage für Eltern und Kinder Kategorien und / oder Taxonomien zu erstellen.

Beispiel: Ich habe eine Taxonomie namens Region, die ich in Länder und Städte innerhalb von Ländern aufteilen möchte. Also, ich werde einen Begriff für die Elterntaxonomie haben, der Italien heißt, und es sind Kindertaxonomiebegriffe, Rom, Mailand, Napoli, was auch immer. Ist es möglich, verschiedene Vorlagen für Land und Stadt zu haben? Wie kann ich das erreichen? Danke im Voraus.

Solutions Collecting From Web of "Verschiedene Vorlagen für Eltern- und Kinderkategorien / Taxonomien"

Ich schlage vor, 3 Dateien zu erstellen

1) regiontemplate-country.php

2) regiontemplate-city.php

Diese 2 enthalten dann die Vorlagen für Land & Stadt

3) Taxonomie-Region.php

Fügen Sie in dieser Datei den Code zum Laden der entsprechenden Vorlage hinzu

< ?php $term = get_term_by('slug', get_query_var('term'), 'region'); if((int)$term->parent) get_template_part('regiontemplate', 'city'); else get_template_part('regiontemplate', 'country'); 

WordPress hat eine Vorlagenhierarchie, die nach bestimmten Vorlagendateien in einer bestimmten Reihenfolge sucht. Wenn es vorhanden ist, wird WordPress diese Vorlagendatei verwenden, um Ihre Ausgabe zu rendern.

Für Taxonomien ist die spezifische Hierarchie wie folgt;

 1. taxonomy-{taxonomy}-{slug}.php //eg taxonomy-region-milan.php 2. taxonomy-{taxonomy}.php //eg taxonomy-region.php 3. taxonomy.php 4. archive.php 5. index.php 

Unter Berücksichtigung der obigen Punkte können Sie eine Vorlagendatei für Ihre region erstellen.

 taxonomy-region.php //eg http://www.example.com/region/ 

… und eine spezifische Slug-Template-Datei für jede Region,

 taxonomy-region-milan.php //eg http://www.example.com/region/milan/ taxonomy-region-roma.php //eg http://www.example.com/region/roma/ etc... 

Was passiert, ist das …

Wenn ein Benutzer zu

 http://www.example.com/region/milan/ 

WordPress wird zuerst versuchen, taxonomy-region-milan.php , falls es gefunden wird, soll es diese Datei als taxonomy-region-milan.php für diesen Taxonomiebegriff zurückgeben. Wenn es nicht gefunden wird, wird es als Fallback auf die nächste logische Auswahl taxonomy-region.php und so weiter durch die Hierarchie-Liste oben gehen, bis es bei index.php ankommt, das Sie definitiv haben werden, weil es ohne Ihr Theme ist würde sowieso nicht funktionieren.

Insgesamt könnte dieses Konzept geeignet sein, wenn Sie nur mit wenigen Städten oder Regionen in Italien oder einem anderen Land arbeiten. Aber sobald Sie anfangen, mit mehreren Städten / Regionen / Ländern zu arbeiten und feststellen, dass Sie denselben Code in verschiedenen Vorlagendateien ständig wiederholen, ist es an der Zeit, einen effizienteren Ansatz zu verwenden.

Also meine Frage an Sie ist, wird die Vorlage für alle Städte / Regionen, wie in Ihrem OP erwähnt, gleich sein? Oder wird jeder anders sein? Wenn ja – wie viel? Denn wo immer es möglich ist, möchten Sie den Code reduzieren, der Ihnen das Leben erleichtert, wenn Sie etwas anpassen / bearbeiten / optimieren müssen und sich diese Änderung auf Ihrer Website widerspiegeln muss.

Dies manuell über mehrere Dateien hinweg zu tun, kann mühsam sein und Sie anfällig für weitere Fehler machen.

Ressource: http://codex.wordpress.org/Template_Hierarchy