WordPress

WordPress タームの親タームや先祖タームの情報を取得して表示する方法

WordPress でタームの親タームや先祖タームの情報を取得して表示する方法を紹介します。
例えば、孫タームページで子ターム・親タームの名前を表示したいときに便利な方法です。

タームアーカイブページでタームの親や先祖タームの情報を取得

例えば、現在表示しているタームアーカイブページでタームの親や先祖タームの情報を取得して表示するには、次のコードを taxonomy.php に追加します。

<?php // 表示しているタームアーカイブの親・先祖タームの情報を取得して表示
$term_id = get_queried_object_id(); // タームのIDを取得
$ancestors = get_ancestors($term_id, 'product'); // タクソノミースラッグを指定してタームの配列を取得
$ancestors = array_reverse($ancestors); // 子親の順番で表示されるので、親子の順番に変更
foreach( $ancestors as $ancestor ) { // 配列から個々の値を取り出す
echo $ancestor; // タームID
$parent_term = get_term($ancestor, 'product'); // タームIDとタクソノミースラッグを指定してターム情報を取得
echo $slug = $parent_term->slug; // タームスラッグを取得
echo $name = $parent_term->name; // ターム名を取得
echo $desc = $parent_term->description; // タームディスクリプションを取得
}
?>

タクソノミースラッグは環境に合うて変更してください。
タームIDが取得できればどのテンプレートでもコードを追加できます。

まとめ

WordPress でタームの親タームや先祖タームの情報を取得して表示する方法を紹介しました。

この記事をシェアする

合わせて読みたい関連記事