Für Menschen · Seien Sie begeistert und Sie werden begeistern !
Die Kategorien von WordPress können ein mächtiges Werkzeug sein, man kann aber auch daran verzweifeln, dazu ein anderes mal vielleicht mehr, aber es gibt auch nicht für jede Anwendung einen entsprechenden Template-Tag von WordPress und so muss man sich etwas bauen. Zwei kleine Sachen, die ich in letzter Zeit gebraucht habe und die ich nicht verstauben lasse will stehen nun in diesem Beitrag.
Manchmal braucht man einfach nur eine Liste alle untergeordneten Kategorien, fragt nicht warum. Die Anforderungen von Projekten kann sehr vielfältig sein, ebenso der Lösungsweg und in meinem Fall ist ein kleiner Code-Schnippsel entstanden, die sich um die Ausgabe der Subcategories kümmert; zum mitnehmen, spielen, verbessern und erweitern.
$echo = '<ul>' . "\n";
$childcats = get_categories('child_of=' . $cat . '&hide_empty=1');
foreach ($childcats as $childcat) {
if (1 == $childcat->category_parent) {
$echo .= "\t" . '<li><a href="' . get_category_link($childcat->cat_ID).'" title="' . $childcat->category_description . '">';
$echo .= $childcat->cat_name . '</a>';
$echo .= '</li>' . "\n";
}
}
$echo .= '</ul>' . "\n";
echo $echo;
Die zweite Sache brauchte ich nicht erstellen, die habe ich bei valen gefunden - klein aber fein. Sie gibt zurück, ob man sich in einer untergeordneten- oder der Haupt-Kategorie befindet. Brauchen kann man so was, wenn man komplexe Strukturen aufbaut und steuern will. Als Übergabe muss die ID der Kategorie mitgegeben werden, kein Slug!
function is_category_or_subcategory($catID = 0) {
foreach (get_the_category() as $cat) {
if ( $catID == $cat->cat_ID || cat_is_ancestor_of($catID, $cat) )
return true;
}
return false;
}
In dem Zusammenhang im übrigen der Hinweis auf die Funktion cat_is_ancestor_of() - sehr mächtig und nützlich.
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, 18728 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]
8. Juni 2010 um 19:45
Eine wirklich gute Sache. Danke für die Codebeispiele.
Werde das gleich mal einflechten in meinen Softwareblog.
15. Juni 2010 um 00:14
Das hilft schon einmal sehr, danke! Hat jemand hier vielleicht auch eine Idee, wie man es anstellt in einer Hauptkategorie jeweils 3 - 4 Excerpts pro Unterkategorie zu erhalten?