Go to top Go to bottom

投稿が分類されているカテゴリーの一覧を表示するにはthe_category()を使用します。

用例
  • 記事一覧で、投稿が分類されているカテゴリーを表示する
  • 投稿ページで、その記事が分類されているカテゴリーを表示する
関連
Codex

投稿が分類されているカテゴリーを出力する

投稿のカテゴリーを出力するには次のようにします。

<?php the_category(); ?>

この関数はWordPressループの中で使用してください。実行すると、例えば次のようになります。

カテゴリーの出力
カテゴリーの出力

出力を見るとわかりますが、the_category()の出力結果は<ul>のリスト形式で出力され、それぞれの項目には、自動的にカテゴリアーカイブへのリンクがつきます。リンクをクリックすると、そのカテゴリに分類される記事一覧ページに移動します。

<ul class="post-categories">
	<li><a href="http://localhost/minimalist/category/photo/" rel="category tag">写真</a></li>
	<li>...</li>
	<li>...</li>
</ul>

上のコードはthe_category()によって出力されたHTMLの例です。1行目のように、出力される<ul>には自動的にpost-categoriesというクラスがつきます。

カテゴリーの出力形式を変更する

the_category()は次のような引数を取ります。

テンプレートタグ

the_category( $separator, $parents, $post_id )

現在の投稿が属するカテゴリーの一覧をリンク付きで出力する。

$separator複数のカテゴリーを出力する際のセパレータ(区切り文字)を文字列で指定する。空文字''を指定するとリスト形式になる
$parents記事がサブカテゴリに所属している場合、親カテゴリの出力の仕方を決める

  • '' :出力しない
  • 'single':「親カテゴリ」「子カテゴリ」と出力。リンクは全体を囲い、子カテゴリへのリンクになる
  • 'multiple':「親カテゴリ」「子カテゴリ」と出力されるが、リンクは親と子で別々に設定される
$post_idカテゴリを取得する投稿のID

$separatorを変更することで、カテゴリの出力のされ方を変更可能です。たとえば、下のようにスラッシュで区切るようにしてみましょう。

<?php the_category( ' / ' ); ?>

すると、出力結果は次のようになります。

セパレータをスラッシュに変更
セパレータをスラッシュに変更

「カテゴリー」というラベルを付けるには、たとえば次のようにします。

<p>カテゴリー:<?php the_category( ' / ' ); ?></p>
「カテゴリー」というラベルをつける
「カテゴリー」というラベルをつける