我正在尝试显示哪些类别属于Wordpress中的特定帖子。 我只想展示那些属于catID 10的孩子并且不想向孙子女展示的类别。
所以我现在有了这个hyrarchie(这只是它的一部分)
Areas (parent, catID = 10)
- Pals/Begur (child)
-- Aiguablava (grandchild)
-- Fornells (grandchild)
我只想展示Pals / Begur。
这是代码,它现在显示了孩子和孙子。
<?php
foreach((get_the_category()) as $childcat) {
if (cat_is_ancestor_of(10, $childcat)) {
echo $childcat->cat_name.', ';
}
}
?>
答案 0 :(得分:1)
尝试使用parent
功能的get_the_category
属性,仅获取某个类别的直接子项。
foreach((get_the_category( 'parent' => 10 )) as $childcat) {
...
}
取自Wordpress:
parent:仅显示由其ID标识的类别的直接后代(即仅限子级)的类别。这不像'child_of'参数那样工作。此参数没有默认值。 [在2.8.4中]
答案 1 :(得分:0)
foreach((get_the_category('parent'=> 10)) as $childcat) {
$child_cats = $childcat->term_id;
$args = array(
'orderby' => 'ID',
'order' => 'DESC',
'child_of' => $child_cats,
'hide_empty' => 0
);
$grandchild_categories = get_categories($args);
foreach ($grandchild_categories as grandchild_category) {
echo $grandchild_category->cat_name.', ';
}
}