函数
cat_is_ancestor_of ( int|object $cat1, int|object $cat2 )
描述
在wordpress开发中,判断某个分类是否是另一个分类的父类(祖先分类)或子类。
参数
$cat1,(int/object) (必填),默认值: None。父分类id或对象$cat2,(int/object) (必填),默认值: None。子分类id或对象
返回值
(boolean) $cat2 是否为 $cat1 的子类。
划重点
若变量是整数的字符串形式而不是真正的整数,会返回 false。
任何级别的祖先分类都将返回 True,不仅仅是父分类。
实例
此示例放置在主题的archive.php中,使用条件标签根据不同的类别显示不同的内容。可以替代category-slug.php方法,不用为每个分类单独创建category-slug.php文件。
下面的代码片段检查是否正在处理名为“音乐”(ID 4)的类别,如果正在处理,则显示“音乐”存档页面的wp_nav_menu以及“音乐”的任何子类别(例如,爵士,古典)。
if ( cat_is_ancestor_of(4, $cat) or is_category(4) ) {
wp_nav_menu( array('menu' => 'Music' ) );
}
还可以用此函数单纯的判断一个分类是否为另一个分类的子类。如:
if ( cat_is_ancestor_of(1, 5) ) {
echo '分类5是分类1的子类';
}