Mill's Note

【Wordpress関数】get_terms()

/

タクソノミー(category, post_tag, カスタムタクソノミー)を指定して、タクソノミーの情報を一覧(配列)で取得するWordpressテンプレートタグ。
パラメータで条件を設定したり、戻り値で様々な要素を指定できます。

get_terms() 呼び出しコード

get_the_terms() は、第一引数の指定により、カスタムタクソノミーだけではなくカテゴリーやタグ一覧も呼び出すことができます。

呼び出しコード説明
<?php $cats = get_terms('taxonomy=タクソノミー名'); ?>タクソノミー (必須) のみ指定
<?php
  $args = array(
    'taxonomy' =>'タクソノミー名'
    'orderby'  => 'count',
    'order'    => 'DESC',
    'number'   => 3
  );
  $cats = get_terms($args);
?>
パラメータを代入

get_terms() パラメータ

パラメータ初期値設定できる値説明taxonomy
taxonomyタクソノミーを指定 必須タクソノミーから取得共通
slugスラッグを指定指定スラッグで取得共通
orderbynamecount、name、slug、term_group、idソート対象共通
orderASCASC(昇順)、DESC(降順)ソート順共通
number取得件数省略時は条件に一致するすべてを取得共通
hide_empty11 (表示しない)、0 (表示する)投稿のないターム共通
includeタームID /複数時 , 区切り指定タームのみ共通
excludeタームID /複数時 , 区切り取得しないターム共通
exclude_treeタームID /複数時 , 区切り取得しないターム(子孫ターム含む)category
taxonomy
pad_counts01(計算する)、0(計算しない)子タームを含めて投稿数を計算するcategory
taxonomy
child_of0タームID指定タームの子孫タームを取得category
taxonomy
parentタームID指定タームの直接の子タームのみ取得
parent=>0 で第一階層のみを取得
category
taxonomy
hierarchical11 (含める)、0 (含めない)「空の親タームの子タームに投稿がある」場合、親タームを含めるcategory
taxonomy
主要なパラメータのみを記載 / 他のパラメータはGoogle様でm(__)m

get_terms() 戻り値

変数名内容
term_idintタームID
namestringターム名
slugstringタームスラッグ
parentint親タームID
countint記事数
descriptionstringターム説明
taxonomystringtaxonomy名
term_taxonomy_idinttaxonomy ID
エイリアスは記載していません。

get_terms() の使用例

カスタムタクソノミー

PHP
<ul>
<?php
  $terms = get_terms('taxonomy=タクソノミー名');
  foreach ($terms as $term) { 
?>
  <li><a href="<?php echo get_term_link($term->term_id,'タクソノミー名'); ?>"><?php echo $term->name; ?></a></li>
<?php } ?>
<ul>

カテゴリー

PHP
<ul>
<?php
  $terms = get_terms('taxonomy=category');
  foreach ($terms as $term) { 
?>
  <li><a href="<?php echo get_term_link($term->term_id,'category'); ?>"><?php echo $term->name; ?></a></li>
<?php } ?>
<ul>

タグ

PHP
<ul>
<?php
  $terms = get_terms('taxonomy=post_tag');
  foreach ($terms as $term) { 
?>
  <li><a href="<?php echo get_term_link($term->term_id,'post_tag'); ?>"><?php echo $term->name; ?></a></li>
<?php } ?>
<ul>