WordPress当前分类的子分类列表

4

如何列出当前分类的子分类列表。

我尝试使用get_categories代码,但无法成功。

像这样;

$args = array('child_of' => term_id );
$categories = get_categories( $args );
foreach($categories as $category) { 
    echo '<p>Category: <a href="' . get_category_link( $category->term_id ) . '" title="' . sprintf( __( "View all posts in %s" ), $category->name ) . '" ' . '>' . $category->name.'</a> </p> ';
    echo '<p> Description:'. $category->description . '</p>';
    echo '<p> Post Count: '. $category->count . '</p>'; 
2个回答

5

将$args替换为:

$current_cat = get_queried_object();

$args = array( 'child_of' => $current_cat->term_id, );

我已经更新了我的答案,提供了一种稍微更好的检测猫的方法。 - Nathan Dawson

0
function sub_category_list(){
  if(is_category()) {

    $breakpoint = 0;
    $thiscat = get_term( get_query_var('cat') , 'category' );
    $subcategories = get_terms( 'category' , 'parent='.get_query_var('cat') );

    if(empty($subcategories) && $thiscat->parent != 0) {
        $subcategories = get_terms( 'category' , 'parent='.$thiscat->parent.'' );
    }

    $items='';
    if(!empty($subcategories)) {
        foreach($subcategories as $subcat) {
            if($thiscat->term_id == $subcat->term_id) $current = ' current-cat'; else $current = '';
            $items .= '
            <li class="cat-item cat-item-'.$subcat->term_id.$current.'">
                <a href="'.get_category_link( $subcat->term_id ).'" title="'.$subcat->description.'">'.$subcat->name.'</a>
            </li>';
        }
        echo "<ul>$items</ul>";
    }
    unset($subcategories,$subcat,$thiscat,$items);
}

}


将以下内容添加到functions.php。在category.php中调用sub_category_list(),以便在您想要列出子类别的位置列出子类别。 - Joe Meers Jankowski

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接