WordPress

WordPress で get_terms を使ったターム一覧の表示方法

WordPress で get_terms を使ったターム一覧の表示方法を紹介します。
例えば、サイドバーにタームの一覧を表示したいときに便利な方法です。

  1. get_terms を使ったターム一覧の表示
  2. タクソノミーを複数指定する方法

get_terms を使ったターム一覧の表示

get_terms を使ってタームの一覧を表示する場合は、パラメーターにタクソノミースラッグを指定します。
例えば、タクソノミースラッグが information-category の場合、次のコードをテンプレートファイルに追加します。

<?php // get_terms を使ったターム一覧の表示
$terms = get_terms('information-category'); // get_terms にタクソノミースラッグを指定
if(!empty($terms)&&!is_wp_error($terms)){
echo '<ul>';
foreach($terms as $term): // foreach ループの開始
?>
<li><a href="<?php echo get_term_link($term); ?>"><?php echo $term->name; ?></a></li>
<?php
endforeach; // foreach ループの終了
echo '</ul>';
}
?>

タームの登録がなければ ul タグを表示しません。
タームアーカイブのリンクや名前以外を取得したい場合は、次のコードを foreach のループ内に追加します。

<?php // ターム情報の表示
echo $term_id = $term->term_id; // タームIDを表示
echo $term_name = $term->name; // ターム名を表示
echo $term_slug = $term->slug; // タームスラッグを表示
echo $term_description = $term->description; // タームディスクリプションを表示
echo $term_link = get_term_link($term_slug,$taxonomy_slug); // タームリンクを表示
?>

タクソノミーを複数指定する方法

タクソノミーを複数指定したい場合は array を使います。
例えば、タクソノミースラッグ information-category と information-tag の二つを混ぜたタームの一覧を表示したい場合は、次のコードをテンプレートファイルに追加します。

<?php // get_terms を使ったターム一覧の表示
$taxonomies = array( // タクソノミーを複数指定する場合は array を使用
'information-category', // タクソノミースラッグの指定
'information-tag' // タクソノミースラッグの指定
);
$args = array(
'order' => 'DESC' // 順番を昇順か降順かを指定、デフォルトは DESC 降順
);
$terms = get_terms($taxonomies, $args); // 値をセット
if(!empty($terms)&&!is_wp_error($terms)){
echo '<ul>';
foreach($terms as $term): // foreach ループの開始
?>
<li><a href="<?php echo get_term_link($term); ?>"><?php echo $term->name; ?></a></li>
<?php
endforeach; // foreach ループの終了
echo '</ul>';
}
?>

まとめ

WordPress で get_terms を使ったターム一覧の表示方法を紹介しました。

この記事をシェアする

合わせて読みたい関連記事