[wp]カスタム投稿に紐づくタームの出力

地味に使うのに忘れてた。怖い。

前置き

大枠としての「カスタム投稿」に紐づいた設定済みのターム出力じゃなくて、「カスタム投稿内の記事」に設定したタームの出力方法。

意味は違うのにざっと言うと同じことに聞こえるんで怖い。

組む

シンプルに、登録したタームをすべて出すならこんな感じ。

<?php
  $terms = get_the_terms($post->ID,'【タクソノミー名】');
  foreach ( $terms as $term ):
?>
            <li><a href="<?php echo get_term_link($term); ?>"><?php echo $term->name; ?></a></li>
<?php endforeach; ?>

single.phpでも記事一覧出力内でも使える。

特定の親タームに紐づく子タームのみ出力

【WordPress】特定の親タームに属する子タームのみをリストで表示 | 相模原市ホームページ制作 ロックストリーム
備忘録です。 特定の親タームに属する子タームのみをリストで表示する方法です。 参考サイト 特定の親タームに属す

前提としてタームに親子関係がある状態でタクソノミーを構築しておく。

活用について

タームで選り分けることを前提にするのであれば、あまり凝った構造にならないようにしたい。一般的な投稿のタグ用途と同様に、ただ羅列する形で登録し、該当タームの一覧を出力する程度に押さえる。そうでなければ、凝ったことをしたいのであれば、それ用に別のタクソノミーを作ってそこからソートを掛けるのがいいと思う。すべてを一つのタクソノミー内で管理しようとすると扱いづらさが跳ね上がる。

コメント

タイトルとURLをコピーしました