我正在尝试动态定位设置如下的不同分类标准:
顶级类别
-二级类别
---第三级类别
我已经将目标定位为第一和第二级:
<?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,第三级将显示具有两级的数组。如何定位每个单独的级别?
答案 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
}