WordPress Archiv Überschriften im Theme anpassen
In diesem Tutorial zeige ich, wie du die WordPress Archiv Überschriften im Theme nach deinen Wünschen anpassen kannst. Standardmäßig werden Archiv-Titel auf allen Seiten für Kategorien, Schlagwörter, Autoren und Monatsarchiven angezeigt.
Seit Version 4.1 stellt WordPress zur Anzeige der Archiv Überschriften die Funktion the_archive_title
bereit. Für Theme Entwickler entfällt damit der Aufwand, für die verschiedenen Archiv-Seiten wie Kategorien und Schlagwörter jeden Titel manuell ausgeben zu müssen. Diese Aufgabe übernimmt nun the_archive_title.
Die meisten aktuellen und modernen Seiten sollten daher diese Funktion nutzen. Deshalb wird in vielen Themes auch nur noch eine gemeinsame archive.php Datei benötigt, anstatt wie früher eine category.php, tag.php, author.php und archive.php für die verschiedenen Archive. Ein Beispiel für diese Vorgehensweise ist TwentySixteen.
Ein Blick hinter die Kulissen der Funktion
the_archive_title
ist lediglich eine Wrapper Funktion zur Ausgabe der Archiv-Überschrift. Der eigentliche Titel der Archive wird in der Funktion get_the_archive_title generiert. Dabei werden in einer langen if-else Verzweigung die verschiedenen Typen von Archiv-Seiten abgefragt und der Titel dementsprechend erstellt.
Ein Blick in den Source Code der Funktion zeigt uns, dass am Ende die Rückgabe des Titels durch einen Filter get_the_archive_title
erfolgt, welcher zur nachträglichen Anpassung der Archiv Überschriften in einem Theme oder Plugin verwendet werden kann.
„Kategorie: “ , „Schlagwort: “ und „Autor: “ Texte in den WordPress Archiv Überschriften entfernen
Wer auf den Archiv Seiten nur den Name der Kategorie, Schlagworts oder Autors ohne zusätzlichen Text ausgeben möchte, kann mit einen kleinem Code Schnipsel die Standard-Funktionalität der Archiv-Titel verändern. Die Funktion verwendet dabei den oben genannten Filter.
WordPress Archiv Überschriften verändern und andere Texte verwenden
Neben dem Entfernen der Standardtexte für die Archiv Titel können diese auch verändert und umbenannt werden. Das funktioniert mit einem etwas umgebauten Code Schnipsel, welcher wieder auf den Filter get_archive_title
zurückgreift:
Bitte beachte: Die beiden Code Schnipsel funktionieren nur, wenn dein Theme auch die Funktion the_archive_title zur Ausgabe der Archiv Überschriften verwendet. Darüber hinaus empfehle ich die Verwendung der Code Schnipsel in der functions.php eines Child Themes.
*Update: Archiv-Titel ohne Code Schipsel verändern
Inzwischen habe ich auch ein Plugin veröffentlicht, mit dem die Archiv Überschriften direkt im WordPress Backend angepasst werden können – ganz ohne Code Schnipsel.
Weitere Infos dazu in meinem Beitrag zum Custom Archive Titles Plugin.
Die Funktionen single_cat_title und single_tag_title bestehen aus jeweils einer einzigen Zeile, in der die Parameter an die single_term_title Funktion weitergereicht werden.
Würdest du in Beispiel Nr. 2 Kategorien, Schlagworte und Terme in einer Abfrage abhandeln, könntest du ein paar Zeilen sparen.
Nur ein Gedanke der mir beim Lesen kam. An und für sich ist das Snippet aber auch so vollkommen in Ordnung.
Viele Grüße
Marvin
Hallo Marvin,
Vielen Dank für den Hinweis, du hast natürlich recht.
Ich habe die if-Abfragen inklusive single_cat_title und single_tag_title einfach von der ursprünglichen Funktion übernommen und muss gestehen, dass ich mir diese nicht näher angesehen habe.
Mit direkter Verwendung von single_term_title lässt sich natürlich der Code etwas effizienter gestalten.
Viele Grüße,
Thomas
You made my Day!
Nach etwas entnervtem Rumgesuche und „Feintuning der Google-Suche“ endlich! auf diesen Eintrag gestoßen. YEP! Man kann allerdings für php-Dummies wie mich gar nicht fett genug hinschreiben, wo die Code-Schnipsel reingehören (IN FUNCTIONS.PHP!!).
Herzlichen Dank und weiter erfolgreiches Bloggen!
Hallo!
Freut mich, dass der Beitrag hilfreich war 🙂
Ich habe inzwischen auch ein Plugin dafür veröffentlicht, mit dem man die Archiv-Titel im WordPress Backend anpassen kann – ganz ohne Code Schnipsel.
Der Name des Plugins ist Custom Archive Titles und kann unter https://de.wordpress.org/plugins/custom-archive-titles/ heruntergeladen werden.
Ich habe das Plugin auch hier im Blog schon vorgestellt: https://themecoder.de/2016/12/13/wordpress-archiv-ueberschriften-mit-custom-archive-titles-aendern/
Viele Grüße,
Thomas