Written by Kasumi

【WordPress】ターム一覧を表示する方法【結論:get_termsを使おう】

WordPressでターム一覧をヘッダー・フッター・サイドバーに表示したい。

また、出力条件を色々とカスタマイズしたい。

本記事ではこのような悩みを解決。

実装方法について解説します。

実装コード

  <ul class="terms-list">
  <?php
  $taxonomy = 'タクソノミー名';
  $terms = get_terms($taxonomy);
  foreach ($terms as $term) :
    $term_link = get_term_link($term->slug,$taxonomy);
  ?>
    <li><a href="<?php echo $term_link; ?>"><?php echo $term->name; ?></a></li>
  <?php endforeach; ?>
</ul>

ターム一覧を出力するコードです。

get_terms関数を使う事で指定したタクソノミーに登録されてるタームを配列で取得できます。

foeachを使って上記配列から値を取り出し、タームの数だけループ・実行します。

foreach内で以下コードを追加する事でターム名・リンク先URLを出力できます。

タームページへのリンクURL
get_term_link($term->slug,$taxonomy);

ターム名
$term->name;

以上で実装完了です。

出力条件を変更したい

  <ul class="terms-list">
  <?php
  $taxonomy = 'タクソノミー名';
  $args = array(
    'orderby'    => 'id',//並び順をID順に変更
  );
  $terms = get_terms($taxonomy,$args);
  foreach ($terms as $term) :
    $term_link = get_term_link($term->slug,$taxonomy);
  ?>
    <li><a href="<?php echo $term_link; ?>"><?php echo $term->name; ?></a></li>
  <?php endforeach; ?>
</ul>

出力条件を変更したい場合はget_termsの引数にパラメータを指定します。

$argsに定義されてる連想配列内に条件を変えるパラーメータを指定します。

上記コード例だとorderbyを使ってタームの並び順をID順に変更する条件を加えてます。

設定出来るパラメータ一覧は以下記事をご参考ください。

https://wpdocs.osdn.jp/%E9%96%A2%E6%95%B0%E3%83%AA%E3%83%95%E3%82%A1%E3%83%AC%E3%83%B3%E3%82%B9/get_terms

まとめ

デフォルト投稿タイプのカテゴリ一覧を表示したい場合はget_categories関数を使います。

get_categories関数の使い方は以下記事をご参考ください。

以上で解説を終わります。

目次

関連記事

WordPress

カスタム投稿タイプを含めた検索ページを作ってみよう【ワードプレス】

更新日:2019.11.28
1849
WordPress プログラミング

ワードプレスのRSSフィードでサムネイル画像(アイキャッチ)を取得する方法【簡単】

2020.05.27
6386
WordPress

WordPressでカテゴリ一覧を表示する方法【結論:get_categories関数を使おう】

更新日:2022.05.28
1540
WordPress プログラミング

【簡単】is_pageで固定ページを複数指定し、条件分岐する方法【配列arrayを使おう】

2022.03.18
4501