Je nach WordPress-Theme kann auf einer Kategorie-Archivseite vor dem eigentlichen Namen der Kategorie noch ein zusätzlicher Präfix erscheinen.
Dann steht dort beispielsweise nicht einfach „WordPress“, sondern „Kategorie: WordPress“.
Technisch ist daran nichts kaputt. Mir hat diese Darstellung bei einem früher verwendeten Theme trotzdem nicht gefallen. Das Theme selbst mochte ich optisch und wollte es deshalb auch nicht nur wegen dieser Kleinigkeit austauschen.
Also brauchte ich eine kleine Lösung für ein kleines Problem.

Der Kategoriename sollte für mich reichen
Auf einer Seite, auf der ohnehin erkennbar ist, dass gerade Beiträge einer bestimmten Kategorie angezeigt werden, brauche ich persönlich den zusätzlichen Hinweis „Kategorie:“ nicht unbedingt.
Ich wollte deshalb lediglich den Präfix entfernen und den eigentlichen Kategorienamen unverändert stehen lassen.
Natürlich hätte man so etwas auch direkt über ein Theme beziehungsweise ein Child-Theme lösen können. Mir war eine davon unabhängige Lösung aber lieber.
Wenn die Funktion nichts mit der Gestaltung eines bestimmten Themes zu tun haben muss, möchte ich sie auch nicht unbedingt dort fest einbauen.
Mein Plugin „Kategorie-Präfix ausblenden“
Daraus entstand mein kleines Plugin „Kategorie-Präfix ausblenden“.
Es macht tatsächlich nur eine Sache: Befindet sich der Besucher auf einer WordPress-Kategorie-Archivseite, wird der von WordPress vorgesehene Präfix der Archivüberschrift entfernt.
Der eigentliche Kategoriename bleibt erhalten.
Andere Archivseiten lasse ich bewusst in Ruhe. Ein Präfix für Schlagwörter, Autoren oder Datumsarchive wird durch meinen Code nicht pauschal entfernt.
Das war mir lieber als eine globale Lösung, die einfach sämtliche Archiv-Präfixe abschaltet, obwohl mich ursprünglich nur das „Kategorie:“ gestört hat.

Der Code
Mein Plugin besteht aus folgendem überschaubaren Code:
<?php
/**
* Plugin Name: Kategorie-Präfix ausblenden
* Description: Entfernt auf Kategorie-Archivseiten den Präfix „Kategorie:“ aus der Überschrift.
* Version: 1.0.0
*/
defined( 'ABSPATH' ) || exit;
function sw_remove_category_archive_prefix( $prefix ) {
if ( is_category() ) {
return '';
}
return $prefix;
}
add_filter( 'get_the_archive_title_prefix', 'sw_remove_category_archive_prefix' );
Was passiert dabei?
WordPress stellt mit get_the_archive_title_prefix einen eigenen Filter für den Präfix einer Archivüberschrift bereit.
Meine Funktion prüft zunächst mit is_category(), ob gerade tatsächlich eine Kategorie-Archivseite angezeigt wird.
Ist das der Fall, gibt sie anstelle des vorhandenen Präfixes einen leeren String zurück. Aus „Kategorie: WordPress“ wird damit einfach „WordPress“.
Handelt es sich dagegen um eine andere Archivseite, wird der vorhandene Präfix unverändert zurückgegeben.
Mehr passiert nicht.
Warum als Plugin und nicht im Theme?
Für mich war die Trennung recht logisch: Der Wunsch, das Wort „Kategorie:“ nicht anzuzeigen, sollte nicht davon abhängen, welches Theme ich gerade verwende.
Würde ich die Änderung direkt in ein Theme schreiben, müsste ich bei einem Wechsel möglicherweise erneut daran denken. Bei einer direkten Änderung am Parent-Theme käme außerdem das bekannte Problem hinzu, dass ein Theme-Update eigene Anpassungen überschreiben kann.
Ein kleines Plugin hält diese Funktion davon getrennt.
Bei meinem heutigen Theme benötige ich das Plugin übrigens nicht mehr. Dort wird die Kategorieüberschrift bereits so dargestellt, wie ich sie haben möchte. Trotzdem kann der Code für jemanden interessant sein, dessen Theme weiterhin „Kategorie:“ vor dem eigentlichen Namen ausgibt.
Nicht jedes Theme muss darauf reagieren
Auch bei diesem kleinen Plugin gibt es eine wichtige Einschränkung.
Es funktioniert dort, wo das verwendete Theme für seine Archivüberschrift die entsprechenden WordPress-Funktionen und Filter verwendet. Baut ein Theme seine Kategorieüberschrift auf einem komplett eigenen Weg zusammen, kann es sein, dass dieser Filter dort überhaupt nicht zum Einsatz kommt.
Deshalb gilt auch hier: ausprobieren und kontrollieren.
Eine weitere Kleinigkeit betrifft die HTML-Ausgabe. WordPress kann den eigentlichen Archivnamen bei vorhandenem Präfix zusätzlich in ein span-Element setzen. Wird der Präfix entfernt, kann auch dieses zusätzliche Element entfallen. Bei den meisten Themes dürfte das keine große Rolle spielen, trotzdem sollte man nach der Änderung kurz kontrollieren, ob die Überschrift weiterhin wie gewünscht gestaltet ist.
Backup machen und vorher testen
So klein der Code auch ist, würde ich ihn nicht ungeprüft auf irgendeine WordPress-Seite kopieren.
- Vorher ein funktionierendes Backup erstellen.
- Prüfen, ob der Code noch zur verwendeten WordPress-Version passt.
- Eine Kategorie-Archivseite aufrufen und die Überschrift kontrollieren.
- Auch andere Archivseiten kurz überprüfen.
- Desktop- und Mobilansicht testen.
- Nach größeren Änderungen an WordPress oder Theme noch einmal kontrollieren.
Ich habe den Code selbst verwendet und war mit dem Ergebnis zufrieden. Das ist trotzdem keine Garantie dafür, dass er mit jedem Theme, jeder WordPress-Version und jeder denkbaren Plugin-Kombination genauso funktioniert.
Wer eigenen Code einsetzt, sollte deshalb wissen, was er verändert, und anschließend überprüfen, ob das Ergebnis wirklich dem entspricht, was er erreichen wollte.
Manchmal stört eben nur ein Doppelpunkt
Heute brauche ich dieses Plugin auf meinem aktuellen Theme nicht mehr. Die kleine Lösung behalte ich trotzdem gern in der Schublade.
Denn manchmal funktioniert eine Website technisch völlig problemlos und trotzdem steht da etwas, das man jedes Mal anschaut und denkt: Das muss doch auch ohne gehen.
In diesem Fall waren es ein Wort und ein Doppelpunkt.
Ein kleiner WordPress-Filter hat gereicht.