Wordpressで指定したカテゴリの最上位の親カテゴリを取得する方法
こんにちは、Web事業部のウエノです。 やりたい…
執筆:upshare
こんにちは、Web事業部のウエノです。
やりたいことはタイトルの通り。
意外と苦戦してしまったのですが、なんとか出来ました。
親カテゴリによってデザインを変えたいときなどに使えそうです。
指定したカテゴリの最上位の親カテゴリを取得
$cat_idには、最上位の親カテゴリを取得したいカテゴリのIDを指定してください。
[php]
// カテゴリIDを指定
$category = get_category($cat_id);
// 無限ループ開始
while(true) {
// 指定したカテゴリの親カテゴリの情報を取得
$category = get_category($category->parent);
// 最上位カテゴリなら(parentが0なら)ループを抜ける
if($category->parent == 0) {
break;
}
}
[/php]
取得したカテゴリの情報を表示
よく使いそうな使用例をまとめてみました。
その他のデータの表示方法については WordPress Codex 日本語版 が参考になります。
[php]
// 最上位カテゴリのタームIDを表示
echo $category->term_id;
// 最上位カテゴリ名を表示
echo $category->name;
// 最上位カテゴリのスラッグを表示
echo $category->slug;
// 最上位カテゴリのカテゴリIDを表示
echo $category->cat_ID;
[/php]WRITER
upshareアップシェアの現場で得た知識やノウハウをお届けします。