WordPressでカテゴリーを一覧表示する方法
WordPressで投稿されている記事のカテゴリーを取得して一覧表示する方法です。
下記のコードをカテゴリー一覧を表示したいところに記入します。
<ul>
<?php
$args = array(
'orderby' => 'id',
'order' => 'asc'
);
$categories = get_categories( $args );
foreach( $categories as $category ){
echo '<li><a href="' . get_category_link( $category->term_id ) . '">' . $category->name . '</a></li>';
}
?>
</ul>
WordPress関数であるget_categories
でカテゴリーを呼び出しています。$args
にはget_categories
を利用する際のパラメータを設定しています。
取得したカテゴリーは、foreach
を使用してリスト形式で出力しています。カテゴリーごとにliタグを生成し、get_category_link
でカテゴリーページへのリンク先のURLを出力します。
取得するカテゴリーの種類や順番はパラメータの設定で変更することができます。例ではorderby
にid、order
にascを設定することで「カテゴリーID順に昇順」で一覧表示しました。他に下記のようなパラメータがあり、表示させる一覧に合わせて設定します。
orderby
指定した項目のアルファベット順またはカテゴリーIDによってカテゴリーを並べ替えます。初期値はカテゴリー名(name)のアルファベット順です。
order
並べ替えの種別(昇順または降順)を指定します。昇順(asc)が初期値なので降順(desc)にする場合に設定します。
parent
カテゴリーIDで指定されたカテゴリーの直接の子カテゴリーのみを取得します。
child_of
カテゴリーIDで指定されたカテゴリーの子孫カテゴリーを取得します。
hide_empty
記事のないカテゴリーを排除するかどうかを指定します。初期値は排除するtrue(1)が設定されているので、記事のないカテゴリーも含まれるようにするためにfalse(0)を指定します。
include
カテゴリーIDで指定したカテゴリーだけを問い合わせ結果に含めます。複数のカテゴリーを選択する場合はコンマ(,
)で区切ります。
exclude
カテゴリーIDで指定したカテゴリーを除外します。複数のカテゴリーを選択する場合はコンマ(,
)で区切ります。
number
問い合わせ結果として返すカテゴリーの数の上限を指定します。
その他のパラメータの詳細は下記で確認できます。