显示自定义分类中的所有术语,并将所有子术语包装在ul中

时间:2013-03-27 作者:Dean Elliott

是否有一种方法可以在无序列表中列出自定义分类法中的所有术语,并在另一个无序列表中包装所有子术语?

例如

<ul class="menu">

    <li><a href="#">Parent 1</a></li>
    <li>
        <a href="#">Parent 2</a>

        <ul class="sub-menu">

            <li><a href="#">Child of Parent 2</a></li>
            <li><a href="#">Child of Parent 2</a></li>
            <li><a href="#">Child of Parent 2</a></li>

        </ul>

    </li>
    <li><a href="#">Parent 3</a></li>

</ul>

1 个回复
最合适的回答,由SO网友:birgire 整理而成

你可以看看Wordpress函数wp_list_categories(). 如果要显示给定自定义分类中的所有术语,例如,可以使用:

<?php 
$args = array(
  \'taxonomy\'     => \'my_custom_taxonomy_slug\',
  \'orderby\'      => \'name\',
  \'hide_empty\'   => 0,
  \'title_li\'     => \'\',
  \'hierarchical\' => 1,
  \'walker\'       => null,
);
?>
<ul class="menu">
<?php wp_list_categories( $args ); ?>
</ul>
如果需要调整html结构,可以使用自定义walker,它可以扩展Walker_CategoryWalker.

您可以在法典中阅读更多信息:

http://codex.wordpress.org/Template_Tags/wp_list_categories

结束

相关推荐

使用$TERMS的分层视图的分类下拉列表

我在Wordpress论坛上问过这个问题,但现在没有得到任何回复,我希望我可以在这里问。我找到密码了here 我的代码是:function exc_custom_taxonomy_dropdown( $taxonomy, $orderby, $order, $hierarchical, $show_count, $name) { $args = array( \'orderby\' => \'name\', \'order\' =&g