
前回の記事で「自作テーマの基本的な作り方」を学んだ方は、次にテンプレート階層を理解すると、より柔軟なテーマ開発ができるようになります。
この記事では、WordPressのテンプレート階層(Template Hierarchy)の仕組みと、代表的なテンプレートファイルの役割を初心者向けに解説します。
テンプレート階層とは?
WordPressには「どのページを表示するか」に応じて、読み込むテンプレートファイルを自動で切り替える仕組みがあります。
この優先順位のルールのことをテンプレート階層と呼びます。
テンプレート階層の例
たとえば「投稿ページ(投稿ID: 10)」が表示されるとき、WordPressは以下の順番でテンプレートを探します:
single-post-10.php
single-post.php
single.php
singular.php
index.php
上から順にファイルがあるか確認し、最初に見つかったファイルが使用されます。
よく使うテンプレートファイル一覧
ファイル名 | 用途 |
---|---|
index.php | すべてのページの最後の fallback(最低限必要) |
home.php | 記事一覧(設定でフロントにも使える) |
single.php | 投稿(投稿タイプ:post)の詳細ページ |
page.php | 固定ページの表示用 |
archive.php | カテゴリ・タグ・日付アーカイブなどの一覧 |
category.php | 特定のカテゴリーページ |
search.php | 検索結果ページ |
404.php | ページが見つからない場合のエラーページ |
テンプレート階層を意識するメリット
- ページごとに見た目を変えられる(例:カテゴリーページごとにデザイン変更)
- カスタマイズ性が高まる(single.php・page.phpなどで分岐可能)
- 不要な条件分岐を減らせる(役割をファイルに分担できる)
補足:get_template_part() で共通パーツを分けよう
テンプレート階層を整理するには、get_template_part()
でパーツを分けるのも有効です。
<?php get_template_part('template-parts/content', 'page'); ?>
上記のように記述すると、template-parts/content-page.php
が読み込まれます。
おわりに
テンプレート階層を知ることで、WordPressテーマの自由度と柔軟性は一気に高まります。
カスタム投稿タイプや条件分岐を使いこなす前に、この仕組みを理解しておくと非常に役立ちます。
次回は、「functions.phpを使って便利な機能を追加する方法」もご紹介しますのでお楽しみに!
Web制作やHTML/CSSの学習に役立つ情報を初心者向けに発信しています。
プロフィールはこちら