カスタム投稿 個別記事ページのパンくずリスト

カスタム投稿の個別記事ページのパンくずリストを以下のように出力させたい。

HOME > WordPress > 記事のタイトル

WordPressの部分に、カスタムタクソノミーで登録した複数のタームから、
個別の記事投稿で設定したタームに合わせて出力したい。
また、出力したタームの記事一覧にリンクさせたい。

get_term_parents_listを利用する

get_term_parents_list は、現在の個別記事の親タームをセパレータを指定してリンク有りで取得して出力させることができる。

使い方

get_term_parents_list( $term_id, $taxonomy, $args = array() )

第一引数に タームIDを指定
第二引数にタクソノミー名を指定
第三引数に配列でオプションを設定

今回は第三引数にseparatorとlinkを設定

'separator' は、区切り文字を指定できる。 デフォルトは'/'
'link' は、リンクにするかどうかを指定。 デフォルトはtrue
'format'で、'name'か'slug'かを指定できる。デフォルトは'name'

  • <div class="breadcrumb">
  •   <ul>
  •     <li><a href="<?php echo home_url(); ?>">HOME</a></li>
  •     <li>
  •     <?php
  •     // get_the_terms(投稿IDを指定, タクソノミー名を指定)で、タームのオブジェクトを配列で取得する
  •     $term_obj = get_the_terms(get_the_ID(), 'memo');
  •     $term_obj = $term_obj[0];
  •     // get_term_parents_list 現在の記事の親タームをセパレータを指定してリンク有りで取得して出力
  •     echo get_term_parents_list(
  •       $term_obj->term_id, // タームIDを指定
  •       'memo', // タクソノミー名を指定
  •       array(
  •         'separator' => '</li>', // 区切り文字を指定 デフォルトは'/'
  •         'link' => true, // リンクにする デフォルトはtrue
  •       )
  •     );
  •     ?>
  •     <li><?php the_title(); ?> </li>
  •   </ul>
  • </div>
ページ上部へ