Für Menschen · Seien Sie begeistert und Sie werden begeistern !

Um das Design oder die Inhalte im Bezug auf eine bestimmte Kategorie anzupassen, musste man bisher eine Abfrage im Theme oder in einem Plugin nutzen. Mit Version 2.9 wird WordPress in der Template-Hirarchie erweitert und man kann nun auf Grund des Slug eigene Templates erstellen.
Ein Beispiel soll es verdeutlichen; diverse Beiträge werden als Kurznews ausgegeben, ein Microblog also. Daher lege ich eine Kategorie mit diesem Namen an und nutze den generierten Slug.

Die Darstellung dieser Beiträge in der Kategorie-Übersicht soll eine andere sein. Bisher musste man dazu folgenden Abfrage integrieren:
if ( is_category('microblog') ) {
// hier die Ausgabe oder Integration des Stylesheet für Kategorie Microblog
}
Mit WordPress 2.9 reicht das entsprechende Template category-microblog.php und dieses Template wird gezogen, wenn man in der Kategorie des Slug microblog ist. Alternativ geht es auch weiterhin mit der ID, die sich aber ändern kann. Über den Namen des Slug ist die Identifizierung eindeutig und einfach.
bueltge.de [by:ltge.de] wird von Frank Bültge geführt, administriert und gestaltet. Alle Inhalte sind persönlich von mir ausgewählt und erstellt, nach bestem Gewissen und Können, was die Möglichkeit von Fehlern nicht ausschließt.
Das Weblog wird angetrieben von WordPress und aktuell gibt es 980 Beiträge, 18722 Kommentare in 14 Kategorien und 464 Tags.
Das Blog wird liebevoll mit xHTML & CSS in Handarbeit gestaltet. Erstellt mit ♥ zum Befüllen und Erhalten.
Design und Code ist unter Copyright
© 2001 - 2012 bueltge.de [by:ltge.de]
2. Dezember 2009 um 09:43
Wow, das ist mal echt eine super Feature, das hatte ich mir schon lange gewünscht. Manchmal finde ich persönlich (und die gleiche Erfahrung habe ich schon bei Kundenprojekten gemacht) das WordPress-Backend mit den ganzen Eingabemöglichkeiten ein wenig sperrig und nicht nutzerfreundlich genug.
Grade bei wenig netzaffinen Kunden muss man sonst alle nicht unmittelbar benötigten Funktionen ausblenden, damit Inhalte korrekt gepflegt werden.
Ich hoffe, dass sich die Usability des Backends in den nächsten Versionen noch weiter verbessert.
2. Dezember 2009 um 10:55
Eine nützliche Erweiterung - jetzt kann man den Kategorien auch ohne direkten Eingriff in den Quelltext thematisch Layouts zuweisen. Ein echter Mehrwert für den Nutzer, zu unterschiedlich sollten die Templates aber nicht sein, um nicht für Verwirrung zu sorgen.
2. Dezember 2009 um 13:41
Super, das ist eine wirkliche Erleichterung. Wie schaut es denn mit der Zuweisung eines single Templates aus? Da läuft die Zuweisung ja immer noch via category- oder tag Abfrage.
3. Dezember 2009 um 00:50
jetzt mal nicht nur aufs styling sondern generell bezogen: in ältenen versionen konnte man auch über get_cat_id('cat_name'); die id der jeweiligen category per deren name rauskriegen und damit dann weiterarbeiten. die lösung in 2.9 ist natürlich wesentlich eleganter und ich freu mich riesig drauf
3. Dezember 2009 um 00:57
gabs das nicht schon vorher? ich nutze die funktion schon etwas länger. nur das jetzt eben auch slugs möglich sind anstelle der id. ich finde diese grafik hilft immer gut weiter, wenn man bestimmte themes erstellen will für bestimmte themen:
http://codex.wordpress.org/Template_HierarchyBILD >
http://codex.wordpress.org/images/1/18/Template_Hierarchy.png3. Dezember 2009 um 08:36
@Norman: geht natürlich immer noch, setzt aber ebenso diverse Abfragen im Code vorraus.
@mo.: ja, auch die Möglichkeit via ID geht weiterhin, geht ja schon sehr lange; aber nicht immer kennt man die ID, bzw. legt der Kunde die Kategorien an und so kann man hier ein wenig flexibler starten.
4. Dezember 2009 um 10:40
Eindeutig, es ist besser geworden.
9. Dezember 2009 um 09:38
Hallo Frank,
du das die Variante mit dem Kategorienamen im Dateinamen besser ist, da die ID geändert werden kann? Das musst du mir erklären. Denkst du nicht, dass der Kunde eher den Namen als die ID ändert? Ich arbeite in solchen fällen lieber mit der ID.
9. Dezember 2009 um 10:42
@Markus: ja, so sit es auch gewollt, der Kunde kann nur durch die Vergabe des Namen Einfluss nehmen.
14. Januar 2010 um 14:46
Hallo Frank,
zuerst mal ein dickes Danke für deine vielen hilfreichen Tipps.
Ich möchte für Events (als eigene Kategorie) ein separates Template erstellen. Gibt es eine einfache Möglichkeit, diese Kategorie in der index.php und beim Aufruf von z.B. Archiven auszublenden?
14. Januar 2010 um 15:03
@Jochen: ja, dazu den Query etwas umbauen und die Kategorie "Events" raus nehmen, siehe Beitrag.
16. Februar 2012 um 21:25
Tolle Seite habe ich da ja gefunden, aber anscheinend verstehe ich das nicht so ganz. Also ich mach eine neue Kategorie, nenne diese Test (slug = test).
Dann suche ich mir ein theme und nenne das in der css-style test oder category-test oder auch category-test.php und trotzdem geht das nicht. Bleibt immer das gleiche Theme!
Gibt es noch ein Tipp für mich?