Hallo an alle :)
Ich habe eine Frage wegen den Templates für Custom Post Types. Laut der Wordpress Template Hierarchie werden ja die Beiträge der Custom Post Types in der archive-{slug}.php ausgegeben. Wenn die nicht existiert in der archive.php und ansonsten in der index.php.
Mit den ersten beiden Lösungen war ich nicht glücklich, weil ich es nicht geschafft habe, die aktuelle Seite im Menü hervorzuheben und den Titel der Webseite auszugeben. Ich habe noch nicht ganz verstanden warum das so ist, ich nehme an das Archivseiten irgendwie anders funktionieren. Damit muss ich mich noch genauer befassen.
Dieses Problem konnte ich aber lösen indem ich ein eigenes Template, also eine page-beispiel.php mit
/**
* Template Name: Personen
*/
angelegt habe. In diesen Templates wird mit WP_Query der Posttype abgefragt, ich habe also für jeden Post Type ein eigenes Template mit einem eigenen Loop. Es ist bei mir so, das pro Seite eine Art von Custom Post Types geladen wird.
Das funktioniert alles und doch habe ich das Gefühl, diese Sache nicht gut gelöst zu haben. Aus dem Grund das ich jetzt für jede Seite ein eigenes Template habe und Anpassungen immer für jede Seite einzeln machen muss. Meine Frage ist, ob es eine Möglichkeit gibt, beispielsweise in der page.php, oder in der index.php eine Abfrage einzubauen, von welcher Seite ich komme und je nachdem die richtigen Beiträge zu laden.
Als Beispiel zur Veranschaulichung:
Custom Post Type: people
Seite: Personen
Template: people.php
WP_Query als Argument: 'post_type' => 'people'
Custom Post Type: animals
Seite: Tiere
Template: animals.php
WP_Query als Argument: 'post_type' => 'animals'
Ich hoffe ich konnte das verständlich beschreiben und bin sehr froh, wenn mir jemand sagen kann, wie ich das besser lösen könnte.