Wordpress Kategorien auf einer eigenen Seite anzeigen
Unter bestimmten Umständen ist es erforderlich, oder man hat einfach den Wunsch, eine Wordpress-Kategorie auf einer eigenen Seite anzuzeigen. Oder umgekehrt: eine Kategorie von der Startseite auszuschließen. Zum Glück haben die Wordpress-Entwickler sich auch dazu Gedanken gemacht und entsprechend vorgesorgt. Der Aufwand ist gering und es ist schnell umgesetzt.
In der Regel geht Wordpress bei der Kategorie-Ansicht so vor, dass als erstes nach einer Seite „category-x.php“ gesucht wird. Wobei „X“ die ID der Kategorie entspricht. Ist diese nicht vorhanden, wird die „category.php“ genutzt. Fehlt auch diese, wird die „archive.php“ verwendet. Diese dürfte bei den meisten Wordpress-Themes vorhanden sein. Viele Theme-Entwickler oder –Designer sparen sich den Aufwand des Anlegens der „category-x.php“ oder „categorie.php“ – außerdem ist es keine Allround-Lösung.
Als erstes muss also herausgefunden werden, welche ID die Kategorie hat, die man auf der separaten Seite anzeigen möchte. Diese kann man sehen, wenn man in der Kategorie-Übersicht mit der Maus über den Namen einer Kategorie fährt. Unten in der Statusleiste des Browsers wird die ID angezeigt.

Mit der Maus über den Kategorie-Namen fahren.

Die Kategorie-ID (in diesem Fall “9″) wird in der Statusleiste angezeigt.
Ein Plugin gibt es für die Anzeige der Kategorie-ID leider nicht. Wohl aber für Seiten und Artikel. Das Plugin heißt „Restore ID“ und zeigt jeweils in der ersten Spalte der Seiten- und Artikelübersicht die IDs an – sehr nützlich. Das Plugin stammt von Nick Ohrn und kann hier heruntergeladen werden. Hat mit diesem Artikel aber weniger zu tun.
Wenn die ID der Kategorie herausgefunden wurde, muss die entsprechende Kategorie-Seite erstellt werden. Dazu in das Theme-Verzeichnis auf der lokalen Festplatte wechseln (wp-content\themes\dein-theme\), am besten einfach die archive.php kopieren und umbenennen. Der Name der Datei ist dann „category-9.php“. 9 für die ID aus dem Screenshot oben. Hier muss die eigene ID verwendet werden.

archive.php kopieren und entsprechend umbenennen
Auf dieser Seite werden nun ausschließlich die Artikel aus der Kategorie 9 angezeigt. Das gibt die Nummer der ID im Dateinamen vor.
Nun möchte man aber noch, dass gerade diese Kategorie nicht mehr auf der Startseite angezeigt wird. Denn dort zeigt Wordpress ja in der Regel die Artikel aus allen Kategorien an.
Dazu muss in der “index.php” eine entsprechende Abfrage vorhanden sein, die prüft, ob es sich bei der Seite um die Homepage handelt; und, wenn dies der Fall ist, soll die Kategorie 9 nicht angezeigt werden. Diese Datei mit einem Editor öffnen und folgenden Code verwenden:
<?php if ( is_home() ) {
query_posts($query_string . '&cat=-9');
}
?>
Diese Abfrage muss vor dem Loop stehen, also vor:
<?php if (have_posts()) : ?>
Beide Dateien (category-9.php und index.php) speichern und auf den Webserver laden. Das war es eigentlich schon. Nun wird die entsprechende Kategorie nicht mehr auf der Wordpress-Homepage angezeigt (vorausgesetzt, man verwendet für die Startseite keine statische Seite).
Der Aufruf der Seite erfolgt dann mittels des vergebenen Kategorienamen. Hat Deine Kategorie mit der ID 9 den Namen “Inspiration”, muss folgendes in der URL-Zeile stehen: http://www.deine-domain.de/category/inspiration/. Vorausgesetzt, die Kategorie-Basis in den Permalink-Einstellungen wurde nicht geändert. Dann muss “category” entsprechend angepasst werden.
Passt soweit alles, kann natürlich noch die neue Kategorie-Seite (category-9.php) angepasst und überflüssiger Code entfernt werden. Bis auf den Loop und den Includes von Header, Â Sidebar und Footer (<?php get_header(); ?>, <?php get_sidebar(); ?>, <?php get_footer(); ?>) kann in der Regel alles entfernt werden. Natürlich besteht die Möglichkeit, eine komplett andere Seite zu coden und zu gestalten.
Wie man sieht ist es mit sehr geringem Aufwand und einfachen Mitteln möglich, immer ein bisschen mehr aus Wordpress heraus zu holen.
Dieser Artikel wurde am Mittwoch, 3. Februar 2010 um 07:30 erstellt. Zugeordnete Kategorie: Wordpress. Wenn Du über weitere Reaktionen zu diesem Artikel auf dem Laufenden gehalten werden möchtest, kannst Du das über das RSS 2.0 -Feed machen. Du kannst natürlich auch einen Kommentar hinterlassen, oder einen Trackback von Deiner eigenen Seite setzen.













