WordPress Template Dateien – Theme-Files im Überblick

WordPress Template Dateien – Theme-Files im Überblick - urbanstudio webdesign berlin
iStockPhoto

WordPress sieht in Themes viele verschiedene Templates für unterschiedliche Ausgaben vor. Im Folgenden möchten wir einen einfachen Überblick über die WordPress Template Dateien geben und erläutern, wann WordPress welche Templates verwendet.

Was ist ein Template?

WordPress ist in PHP programmiert und liegt quelloffen vor. Seine Template Dateien sind die Basis für die sog. Front-End-Ausgabe des Themes, nutzen HTML/CSS und PHP zur Ausgabe der in der Administration gepflegten Inhalte und Daten. Damit WordPress reibungslos funktioniert genügt schon eine einzige Template Datei: index.php

Moderne Themes nutzen aber eine Vielzahl spezieller Template Dateien, angepasst zur Ausgabe konkreter Inhalte. Beiträge können so beispielsweise anders erscheinen als Seiten. WordPress unterscheidet:

  • Query Templates
    Also Templates, die direkt beim Aufruf einer Seite geladen werden; für diverse Beiträge, statische Seiten oder sog. Archive. Beispielsweise single.php, home.php oder archive.php
  • Template Partials
    Zudem gibt es mit den Template Partials Dateien, welche die Ausgabe bestimmter Bereiche der Webseite enthalten. Hier zum Beispiel den Header oder Footer, die Suche oder die Ausgabe der Kommentare. Diese Ausgabe-Vorlagen werden dann in anderen Templates eingebunden. Beispiele sind: header.php, sidebar.php oder eben footer.php

Wann nutzt WordPress welches Template?

WordPress lädt bei Aufruf einer Webseite die jeweils hinterlegte Template Datei selbständig. Welche Template Datei geladen wird ist aber von der eingegebenen URL abhängig. WordPress sucht Anhang der Template Hierarchie nach dem richtigen Template. Wenn kein spezielles Template vorgefunden wird, wird die index.php geladen.

Vorab gibt es hier die WordPress Template Hierarchie im Bild:

WordPress Template Dateien Hierarchie
WordPress

Man kann sich bei WPhierarchy auch interaktiv mit der Hierarchie beschäftigen.

Primäre WordPress Template Dateien

Als primäre Templates werden die Dateien eine Hierarchie-Ebene über der index.php bezeichnet. Es handelt sich mit um die häufigsten Template Dateien, die in Themes eingesetzt werden.

  • 404.php
    ist die Datei, welche bei Fehler 404 geladen wird; also wenn die angefragte Datei bzw. der Inhalt nicht in der Datenbank auffindbar ist.
  • home.php
    zeigt die letzten Beiträge, wird aber nicht zwingend als eigentliche Homepage (Startseite) genutzt. Sie funktioniert – wenn eine statische Seite als Homepage dient – als Blog-Startseite.
  • archive.php
    Archive wird für die Ausgabe von Tag-, Kategorien-, oder Autoren-Archiven genutzt. Man kann mit WordPress aber spezifische, sog. sekundäre Templates wie category.php oder auch author.php definieren.
  • search.php
    zeigt die Suchergebnisse, wenn eine Suche durchgeführt wurde
  • page.php
    zeigt eine statische Seite an.
  • single.php
    zeigt einen einzelnen Beitrag an. Oft ergänzt mit comments.php und sidebar.php.
  • singular.php
    ist eines der jüngeren Templates. Es wird gemäß der WordPress Template Hierarchie nach single.php und page.php, aber vor index.php geladen. Ziel war es, die einfaches Ausgabe von statische Seiten und Beiträgen im gleichen Template zu schaffen.
  • index.php
    ist das Standard-Template, was zur Ausgabe herangezogen wird, wenn es keine der o.g. WordPress Template Dateien gibt.
  • style.css
    Zwar keine HTML-Datei, aber zentral für jedes Theme: Die zentrale Stylesheet-Datei, die auch Informationen zum Namen des Themes, dem Autor etc. enthält (der sog. Information Header).
  • screenshot.png
    ist das Vorschaubild des Themes im Admin, wird als 4:3-Bild ausgegeben. Wir empfehlen die Größe von 1024 x 768px.

Sekundäre WordPress Templates

Die sekundären Templates sind in der WordPress-Hierarchie eine Ebene höher:

  • author.php
  • category.php
  • date.php
  • tag.php

Hiermit können für die Archive von Autoren, Kategorien, Datum und Schlagwörter unterschiedliche Ausgaben erstellen, anstatt auf archive.php zurückzugreifen.

  • front-page.php

Liegt im Theme eine front-page.php vor, wird sie als Template für die Startseite verwendet, ganz gleich ob eine statische Seite oder die letzten Blog-Beiträge als Startseite ausgewählt wurden. Ohne das Front-Page-Template wird je nach Wahl entweder die home.php oder die page.php eingebunden.

Variable Template Dateien

Erwähnt werden sollte noch, dass Ihnen WordPress die Verwendung sog. variabler Template Dateien ermöglicht. Diese Dateien lassen die Nutzung individueller Templates für Slugs, IDs oder spezielle Autoren zu:

  • author-{nicename}.php
    Um die Beiträge eines bestimmten Autors alternativ darzustellen kann das Template author-horst.php (Beispiel) für den Autoren mit dem im System hinterlegten Namen Horst angelegt werden.
  • category-{slug}.php
    Eine spezielle Kategorie wie zB. „Allgemein“ erhält mit category-allgemein.php eine eigene Ausgabe, die anstelle der  category.php angezeigt wird.
  • page-{id}.php
    Für konkrete Seiten können eigene Templates hergestellt werden. Für die Seite mit der ID 3 würde WordPress – insofern vorhanden – das Template page-3.php zur Ausgabe nutzen.

WordPress kann für eigene Custom Post Types eigene Templates nutzen. Das nutzen wir in der Praxis sehr häufig:

  • archive-{post-type}.php
  • single-{post-type}.php

Damit können z.B. für den Custom Post Type mit dem Slug rezept mit individuellen WordPress Template Dateien zur Anzeige von Rezepten erstellt werden: archive-rezept.php und single-rezept.php.

Standard Template Parts

Die wichtigsten Template Parts von WordPress sind:

  • header.php
    enthält den Quellcode des sog. Headers eines Themes. Hier findet man häufig Logo, Navigation und Werbebanner. Diese Header Template Datei kann mit der Funktion get_header() in andere Template hineingeladen werden.
  • footer.php
    beschreibt den sog. Footer der jeweiligen Website. Wird analog zum Header mit get_footer() in ein Template geladen.
  • sidebar.php
    enthält die Darstellung der Sidebar, bzw. der Widgets und wird mit get_sidebar() eingebunden.
  • comments.php
    gibt die Kommentare innerhalb einer WordPress Template Datei aus Seite aus. Wird häufig in single.php und page.php mit comments_template() aufgerufen.
  • searchform.php
    ersetzt bei Bedarf das Standard-Suchformular und enthält entsprechend ein eigenes Formular passend zum jeweiligen Theme. Kann mit get_search_form() geladen werden, oft direkt in der Sidebar.

Sicher kann man zum Thema der WordPress Template Dateien und -Hierarchie noch wesentlich mehr sagen, aber uns ging es an dieser Stelle um eine Einführung bzw. einen Überblick. WordPress stellt hierfür mit dem Theme-Handbuch selbst sehr gute, aber ausschließlich englischsprachige Inhalte bereit.