Benutzerdefinierte Liste der Seitenleistenkategorien?

Ich versuche, eine benutzerdefinierte Kategorie-Anzeige auf meiner Seitenleiste zu erstellen, und dafür brauche ich eine Möglichkeit, sowohl die Kategorieliste als auch die Kinderliste in 2 verschiedenen Arrays oder ähnlichem zu bekommen …

Zuerst probierte ich die function get_categories , aber es erlaubt mir nicht, nur Top-Level-Kategorien zu sammeln:

 $args=array('orderby' => 'name', 'order' => 'ASC'); $categories=get_categories($args); 

Dann zog ich nach wp_list_categories was macht was ich will. Die Rückgabe gibt mir jedoch nicht eine Reihe von Daten, die ich abfragen kann. Es gibt mir eine einfache HTML-formatierte Liste zum ausdrucken:

 $categories=wp_list_categories('echo=0&style=none&orderby=name&order=ASC&depth=1&title_li='); 

Warum möchte ich nur die oberste Ebene? Weil ich eine Show / Verstecke function für die Kinder der obersten Kategorie machen wollte. Wenn Sie eine andere Möglichkeit haben, dies zu tun, lassen Sie es mich wissen.

Solutions Collecting From Web of "Benutzerdefinierte Liste der Seitenleistenkategorien?"

Sie können Kategorien mit übergeordneten Elementen in Ihrer Schleife überspringen:

 foreach($category_list as $category) { if( '0' != $category->parent ) continue; 

Ich habe die Quelle durchgesehen, aber es scheint, dass die depth nur in wp_list_categories() berücksichtigt wird. Sie müssen wahrscheinlich die Walker_Category class zu Custom Walker erweitern, um Änderungen an der Ausgabe vorzunehmen.

Eigentlich könnte dies eine gute Idee sein, wenn Sie ein wirklich komplexes Ausgabeformat für Kategorien benötigen.