the_category()

the_category()
目次

the_category()の用途

the_category() は、WordPressで投稿に属しているカテゴリー一覧を表示するためのテンプレートタグです。各カテゴリー名はリンク付きで出力されます。

the_category()の基本構文

the_category( string $separator = '', string $parents = '', int $post_id = false );

the_category()のパラメータ

引数説明
$separatorstringカテゴリー名の区切り文字列(例:', ')。省略時は空文字。
$parentsstring親カテゴリーの表示方法。'multiple'(親 > 子)または 'single'(子のみ表示)。
$post_idintカテゴリーを表示したい投稿の ID(省略時は現在の投稿)。

the_category()の使用例

1. カテゴリー名をカンマ区切りで表示

the_category(', ');

→ 出力例:

<a href="...">お知らせ</a>, <a href="...">イベント</a>

2. 親カテゴリーを含めて表示(階層表示)

the_category(' / ', 'multiple');

→ 出力例:

<a href="...">お知らせ</a> / <a href="...">お知らせ > 行事</a>

3. 特定の投稿IDのカテゴリーを表示

the_category(', ', '', 42);

投稿ID 42 のカテゴリー一覧を表示します。

the_category()の注意点

  • the_category()直接HTMLを出力します。値を取得したい場合は get_the_category() を使ってください。
  • 取得されるのは「投稿」タイプに属するカテゴリーです。カスタム投稿タイプでは get_the_terms() の利用が推奨されます。

the_category()のカスタマイズ例:カテゴリー名のみ表示(リンクなし)

$categories = get_the_category();
if ( ! empty( $categories ) ) {
    $cat_names = wp_list_pluck( $categories, 'name' );
    echo implode( ', ', $cat_names );
}

関連関数の違い

関数名説明
the_category()投稿に属するカテゴリーをリンク付きで表示
get_the_category()カテゴリー情報(配列)を取得する(表示しない)
get_the_category_list()リンク付きのカテゴリー名一覧を取得(出力はしない)
get_the_terms()任意の投稿に関連付けられたタクソノミー(カテゴリやタグなど)を取得

the_category()のよく使う組み合わせ

カテゴリー名の下に説明文を出したい場合:

$categories = get_the_category();
if ( ! empty( $categories ) ) {
    foreach ( $categories as $cat ) {
        echo '<div class="category-block">';
        echo '<h3>' . esc_html( $cat->name ) . '</h3>';
        echo '<p>' . esc_html( category_description( $cat->term_id ) ) . '</p>';
        echo '</div>';
    }
}
よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

初めてホームページを作成したのは1996年。
2000年よりフリーランスで主に中小企業、学校、各種公的団体、個人事業主のWordPressを活用したホームページ制作を行っています。WordPressテーマはそれぞれのクライアントに合わせて作成しています。
WordPressを活用したサイト運営のための情報発信をしていきます。

目次