カスタムタクソノミーをタームの一覧で表示させたい場合があると思いますが、そんな中でも親タームだけを一覧で表示させたいと思ったことはないでしょうか?
親タームA
子タームA
子タームB
子タームC
親タームB
子タームA
子タームB
子タームC
親タームC
子タームA
子タームB
子タームC
上記のような構造のカスタムタクソノミーの場合、次の様に親タームだけを表示させます。
親タームA
親タームB
親タームC
そんな時に使えるコードをご紹介します。
親タームだけの一覧を表示させたい箇所に下記のコードを記載してください。
<?php
$tax_name = '*****';
$terms = get_terms( $tax_name, array('parent' => 0));
?>
<ul>
<?php foreach($terms as $term): ?>
<?php if($term->parent == 0): ?>
<li><a href="<?php echo get_term_link($term->slug, $tax_name) ?>"><?php echo $term->name ?></a></li>
<?php endif; ?>
<?php endforeach; ?>
</ul>
【*****】の部分は、カスタムタクソノミー名に置き換えてください。
上記のコードを設置した箇所に、親タームだけの一覧が標示されます。
PHPコードが記述できない箇所の場合は、ショートコード化して読み込むなど個別の対応が必要となります(こちらの方法は次の機会に解説します)。
WordPressのカスタマイズでお困りのことがあれば、下記のサービスからお気軽にご相談ください。