Sidebar
ein-/ausblenden

Codeschnippsel zu WordPress Kategorien

Plugin für WordPress SEO

Anzeige

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.

Liste aller Unterkategorien

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;

Abfrage, ob in Kategorie oder Subkategorie

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.

2 Kommentare zu „Codeschnippsel zu WordPress Kategorien“

  1. 1
    Kommentar von Sabine

    Eine wirklich gute Sache. Danke für die Codebeispiele.
    Werde das gleich mal einflechten in meinen Softwareblog.

  2. 2
    Kommentar von Martin

    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?

Kommentar schreiben

Kommentarregeln: Bleib cool, kritisch ist in Ordnung, aber wenn du unhöflich bist, dann lösche ich deinen Kommentar. Bitte benutze deinen persönlichen Namen oder Initialen und nicht den Namen eines Unternehmens, dies würde als Spam gewertet und wird gelöscht. Der Zusammenhang zwischen Namen und URL sollte nicht offensichtlich auf Spam hindeuten! ♥ Ansonsten, vielen Dank für den Kommentar und viel Spaß mit meinem Blog.

E-Mail-Benachrichtigung bei weiteren Kommentaren.
Auch möglich: Abo ohne Kommentar.

Kommentar-Hilfe

händischer Spam:
Beachte die Kommentarregeln, jede Form von versuchtem Spam wird gelöscht. Warum und wieso steht in einem meiner Beiträge.

Bezug auf Textstellen:
Du kannst direkt bezug auf Textstellen im Beitrag nehmen. Dazu muss lediglich der Bereich im Artikel markiert werden; daraufhin erscheint ein Button, der den markierten Text in das Kommentarfeld übernimmt und als Zitat auszeichnet. Die Funktion ist nur bei aktivem JavaScript nutzbar.

xHTML:
Du kannst folgende Tags benutzen: <a href="" title=""> <abbr title=""> <acronym title=""> <blockquote cite=""> <code> <pre> <em> <strong> <strike> <ul> <ul> <li>

Achte darauf, wenn du Code im Kommentar hinterlegen willst, dann muss der Code maskiert sein. Dann wird er nicht interpretiert. Der Code muss mit Hilfe von HTML-Entities dargestellt werden, d.h. dass man z.B. < als &lt; und > als &gt; einfügt.

E-Mail-Benachrichtigung bei neuen Kommentaren ?
Wenn der Haken in der Checkbox gesetzt ist, dann wirst du über neue Kommentare vie E-Mail informiert. Der Versand erfolgt nur, wenn du die URL in der Bestätigungs-E-Mail genutzt hast oder schon Abonnent hier im Blog bist.

Kommentar erscheint nicht:
Alle Kommentare werden manuell geprüft, freigegeben und nach Möglichkeit beantwortet. Bitte um etwas Geduld und Nachsicht.

Identifikationsbilder (Avatare):
Auf Gravatar.com kann man sich mit seiner E-Mail-Adresse registrieren und ein Bild hochladen, dann erscheint dieses Gravatar hier und in vielen weiteren Blogs.

Spamschutz:
Das Kommentarformular ist mit einem Spamschutz ausgerüstet. Solltest du diesen Artikel ohne JavaScript besuchen und kommentieren wollen, so muss du die Frage beantworten und das jeweilige Wort in das Textfeld eingeben.