カスタム分類のターム一覧を取得する方法

今までカスタム投稿を使用していなかった人が、初めてカスタム投稿を利用した時に悩むことの一つにカテゴリー一覧を出力することではないでしょうか。

今回はカスタム投稿を利用した際の、カスタム分類のターム一覧(カテゴリー一覧)を出力する方法について紹介していきます。これから始めてカスタム投稿及びカスタム分類を利用される方は、参考にしていただければと思います。

ターム一覧の出力方法

下記コードをテンプレートの表示したい箇所に設置します。

<?php
// カスタム分類名
$taxonomy = 'タクソノミー名';

// カスタム分類のタームのリストを取得
$terms = get_terms( $taxonomy );

foreach ( $terms as $term ) {
    echo $term->name;    //ターム名を出力する場合
    echo $term->slug;    //タームスラッグを出力する場合
}
?>

上記のコードで注意していただきたいことは、3行目のタクソノミー名の部分です。
ここはご自身が作成したタクソノミー名を記述してください。

8行目から11行目までの間でタームの個数分ループされます。
この行間の間でターム名を出力してください。(9行目のコードで出力されます。)

また現状のままだと1行でターム名が出力されてしますので、htmlを記述してリスト構造にするなど任意で整形してください。またリンクを付ける場合には、取得したタームスラッグ(10行目のコード)を使うと可能です。

上記コードで作成したのが、下記のデモとなります。

 

タームの順番を変更したい場合

タームの順番変更

前述した方法を使用した場合に、ターム(カテゴリー)の順番が思ったように並ばないことが発生します。任意の順番に設定したい場合には、カテゴリーの順番を変更するプラグインを活用すると簡単に実現できます。

カテゴリーの順番を変更するプラグイン
    • Category Order and Taxonomy Terms Order
    • Custom Taxonomy Order NE

カスタム投稿を利用する際には、重宝されるプラグインなので参考にしていただければと思います。

おすすめの記事