WordPress WP_Term_Query を使ってターム情報を出力する方法

WordPress WP_Term_Query を使ってターム情報を出力する方法

WordPress の WP_Term_Query を使ってターム情報を出力する方法を紹介します。
WP_Term_Query は、WordPress 4.6 から追加された新しいクラスになります。使用するには WordPress 4.6 以上にアップデートする必要があります、ご注意ください。

ターム一覧の出力方法

WP_Term_Query を使ってターム一覧の出力する、基本的な方法を紹介します。
次のコードは、タクソノミーが category の場合に、タームの一覧をアーカイブページのリンク付きで出力します。


<ul>
<?php
$args = array(
'taxonomy' => 'category', // タクソノミーの指定
'orderby' => 'name', // カテゴリー名のアルファベット順
'order' => 'ASC', // ASC:昇順(初期値)、DESC:降順
'hide_empty' => false, // 投稿のないカテゴリーの扱い、true:空カテゴリーを隠す、false:全て表示
);
$the_query = new WP_Term_Query($args);
foreach($the_query->get_terms() as $term){ // 繰り返し処理の開始
$term_link = get_term_link($term->slug,'category'); // タクソノミーの指定
?>
<li><a href="<?php echo $term_link; ?>"><?php echo $term->name.' ('.$term->count.')'; ?></a></li>
<?php
} // 繰り返し処理の終了
?>
</ul>

タームオブジェクトには様々なフィールドが含まれます。タームの名前や説明を返す場合は次のコードを参照してください。


<?php
$args = array(
'taxonomy' => 'category', // タクソノミーの指定
'orderby' => 'name', // カテゴリー名のアルファベット順
'order' => 'ASC', // ASC:昇順(初期値)、DESC:降順
'hide_empty' => false, // 投稿のないカテゴリーの扱い、true:空カテゴリーを隠す、false:全て表示
);
$the_query = new WP_Term_Query($args);
foreach($the_query->get_terms() as $term){ // 繰り返し処理の開始
echo $term->term_id; // タームID
echo $term->name; // ターム名前
echo $term->slug; // タームスラッグ
echo $term->term_group; // 親タームのターム ID
echo $term->term_taxonomy_id; // タームが属するタクソノミーのID
echo $term->taxonomy; // タームが属するタクソノミーの名前
echo $term->description; // タームディスクリプション
echo $term->parent; // 親タームのタームID
echo $term->count; // タームが使われている回数
echo $term->filter;
echo $term->term_order;
} // 繰り返し処理の終了
?>

その他のタームの出力方法

その他のタームの出力方法は次の投稿にまとめています、合わせてご覧ください。

WordPress ターム情報を取得して出力する方法

まとめ

WordPress の WP_Term_Query を使ってターム情報を出力する方法を紹介しました。

スポンサーリンク

私が続けて読みたい関連記事

私が続けて読みたい関連記事