WordPressでは、category.phpなどのカテゴリー一覧ページで、今表示しているカテゴリー名をタイトルとして表示することがよくあります。
目次
一番シンプルな方法(初心者向け)
single_cat_title() を使う
<h1><?php single_cat_title(); ?></h1>表示例
- 今表示中のカテゴリー名を自動取得
- そのまま出力される
- category.php で一番よく使われる
まずこれを覚えればOKです!
HTMLと組み合わせる基本形
<header class="archive-header">
<h1 class="archive-title">
<?php single_cat_title(); ?>
</h1>
</header>仕組みを軽く理解する(重要)
single_cat_title() は、
- 現在のクエリ(表示中のカテゴリー)
- そのカテゴリー名を取得
- echo まで自動で行う
という 出力系のテンプレートタグ。
echo したくない場合(応用)
<?php
$category_name = single_cat_title( '', false );
echo $category_name;
?>ポイント
- 第2引数を
falseにすると「取得のみ」 - 変数に入れて加工できる
👉 class を付けたい、条件分岐したい時に使う。
よくある実務パターン:文言を付ける
<h1>
「<?php single_cat_title(); ?>」の記事一覧
</h1>表示例:
<h1>
「テンプレートタグ」の記事一覧
</h1>SEOを意識したタイトル例
<h1>
<?php single_cat_title(); ?>の記事一覧
</h1>- 検索キーワードを自然に含めやすい
- アーカイブページの文脈が明確になる
カテゴリーの説明文も表示したい場合(補足)
<?php
$description = category_description();
if ( $description ) {
echo '<p class="archive-description">' . $description . '</p>';
}
?>- 管理画面で設定した「カテゴリーの説明」を表示
- SEO・UXの両方に効果あり
get_queried_object() を使う方法(実務寄り)
<?php
$category = get_queried_object();
?>
<h1><?php echo esc_html( $category->name ); ?></h1>
この方法でできること
- スラッグ取得
- カテゴリーID取得
- 親子関係の判定
👉 複雑な条件分岐が必要な場合用。
single_cat_title() と get_queried_object() の使い分け
| 目的 | 使う方法 |
|---|---|
| とにかく表示したい | single_cat_title() |
| 加工・条件分岐したい | get_queried_object() |
| 説明文も出したい | category_description() |
初心者向けまとめ
- カテゴリー一覧のタイトル表示は
single_cat_title()が一番簡単 - 出力まで自動なので echo は不要
- 加工したい場合は第2引数や
get_queried_object() - SEOを考えるなら説明文も一緒に表示すると良い

コメント