显示帖子分配到的类别的子项

时间:2016-12-22 作者:jlohse22

以下代码用于在侧边栏中显示父类别(查看父类别时)的所有子类别,以及子类别(查看子类别时)的所有同级。php。相同的侧边栏被拉入帖子和页面。

我想更进一步,这样它在查看帖子时也能正常工作,而不仅仅是类别和子类别。在帖子中,我希望显示分配给帖子的所有子类别。花了无数个小时后,我不知所措。有人能帮我吗?

    <ul>                
            <?php if (is_category( )) {                             
                  $cat = get_query_var(\'cat\');
                  $thiscat = get_category ($cat);
                  $parent = $thiscat->parent;
                  $img = get_option(\'z_taxonomy_image\' . $thiscat->term_id);

                  if ($parent != \'\') {

                        wp_list_categories( array(
                        \'child_of\' => $parent,
                        \'exclude\' => $cat,
                        \'title_li\' => 0
                    ) );
                    }

                  else {

                        wp_list_categories( array(
                        \'child_of\' => $cat,
                        \'title_li\' => 0
                    ) );
                  }

            } 
            ?>

            </ul>

1 个回复
SO网友:Michael

使用获取单个帖子的一个或多个类别get_the_category() 并循环遍历它们,调用子类别列表(如果可用)。

<ul>
<?php 
if( is_single() ) {
    $post_cats = get_the_category();
        foreach( $post_cats as $post_cat ) {
            wp_list_categories( array(
                \'child_of\' => $post_cat->term_id,
                \'title_li\' => 0,
                \'show_option_none\' => \'\'
            ) );
    }
}
?>
</ul>