[WordPress] 表示中のカテゴリーページがあるカテゴリーと親子関係なのかチェックしたい
カテゴリーの親子関係に応じて表示を切り替えたりしたい場合、「cat_is_ancestor_of」という関数を使うことで親子関係のチェックができます。
サンプルコード
<?php
$parent_category = get_category_by_slug('parent_xxx');
if(!empty($parent_category)) {
$parent_category_id = $parent_category->term_id;
$current_category_id = get_queried_object_id();
if(cat_is_ancestor_of($parent_category_id, $current_category_id)) {
// parent_xxxを親に持っている場合
}
else {
// parent_xxxを親に持っていない場合
}
}
?>
「cat_is_ancestor_of」関数は、第一引数に親カテゴリーのIDを、第二引数に子カテゴリーのIDを指定することで、二つのカテゴリーが親子関係にあるか判定結果を返します。
引数はIDで指定する必要があるため、スラッグ名からIDを取得する処理をそれぞれ行っています。
ご質問など受け付けています
記事の中でわかりにくかったところ、もっと知りたかったこと、間違っていることなど、何でもお気軽にご連絡ください。
ご連絡は下記フォームを利用いただくか、ツイッターアカウント@flat8migi宛てでもOKです。