如何针对不同级别的Wordpress分类标准?

时间:2018-08-23 09:31:24

标签: php wordpress

我正在尝试动态定位设置如下的不同分类标准:

  • 顶级类别

    -二级类别

    ---第三级类别

我已经将目标定位为第一和第二级:

<?php $parent = get_queried_object()->parent;
if($parent == "0"){ ?>
  Top level
<?php } else { ?>
  Second level
<?php } ?>

如何定位第三个级别?


<?php $term_id = get_queried_object()->term_id;
$ancestors = get_ancestors( $term_id, 'categories' ); ?>

<pre>
<?php print_r($ancestors); ?>
</pre>

在具有以上代码的类别页面上时...顶级将数组显示为空,第二级将显示父级的ID,第三级将显示具有两级的数组。如何定位每个单独的级别?

1 个答案:

答案 0 :(得分:1)

尝试使用get_ancestors()WP函数:get_ancestors()

function get_tax_level($id, $tax){
    $ancestors = get_ancestors($id, $tax);
    return count($ancestors)+1;
}

$current_term_level = get_tax_level(get_queried_object()->term_id, get_queried_object()->taxonomy);

if ($current_term_level = 0) {
    // show first drop-down
} else if ($current_term_level = 1) {
    // show second drop-down
} else {
    // show third drop-down
}