Как вывести дерево категорий в WordPress
Пример кода для вывода дерева категорий и других иерархических тахономий WordPress.
<?php
$treeParams = array(
'taxonomy' => 'advert_category',
'hierarchical' => true,
'title_li' => 'TITLE',
'hide_empty' => false
);
?>
<ul>
<?php wp_list_categories($treeParams); ?>
</ul>
advert_category - это название кастомной таксономии (категории рекламных объявлений), которая имеет иерархическую структуру.
Примечание
Вы можете передать аргументы в строковом формате, как:
wp_list_categories('taxonomy=advert_category&hierarchical=1&hide_empty=0');
Чтобы получить массив "терминов", используйте:
$categories = get_terms('advert_category', ['orderby' => 'name', 'hide_empty' => false]);
Итоговая разметка:
<ul>
<li class="advert_category">
TITLE
<ul>
<li class="cat-item cat-item-16 current-cat">
<a href="http://site.com/adverts/realty">Недвижимость</a>
<ul class="children">
<li class="cat-item cat-item-17">
<a href="http://site.com/adverts/realty/rent">Сдается</a>
</li>
<li class="cat-item cat-item-20">
<a href="http://site.com/adverts/realty/want-to-rent">Сниму</a>
</li>
</ul>
</li>
</ul>
</li>
</ul>
#wordpress categories tree html, #wordpress output tree taxonomy term