WordPressのテンプレート階層を図解で理解!

WordPressのテンプレート階層を図解で示したフローチャート。投稿ページ、固定ページ、カテゴリーページ、タグページ、カスタム投稿タイプのアーカイブに対応するテンプレートファイルが階層的に並ぶ。
WordPressのテンプレート階層を図解で理解!各ページタイプに対して適用されるテンプレートファイルの優先順位を視覚的に把握できます。

WordPressテーマ開発において避けて通れないのが「テンプレート階層」の理解です。

「どのテンプレートファイルが表示に使われるのか分からない…」
「single.phpとpage.phpの違いって何?」
こんな疑問を持つ方に向けて、この記事ではテンプレート階層の全体像を図解付きでわかりやすく解説します!

テンプレート階層とは?

テンプレート階層(Template Hierarchy)とは、WordPressがどのテンプレートファイルを使ってページを表示するかを決めるルールのことです。

WordPressはアクセスされたURLやページの種類に応じて、特定のテンプレートファイルを順番に探していきます。これがテンプレート階層です。

💡基本的な構成ファイルについては、WordPressテーマの構成ファイルまとめをご覧ください。

【図解】テンプレート階層の基本構造

以下はテンプレート階層の簡略図です。

・投稿ページ(single post)
 → single-{post-type}.php  
 → single.php  
 → singular.php  
 → index.php

・固定ページ(page)
 → page-{slug}.php  
 → page-{id}.php  
 → page.php  
 → singular.php  
 → index.php

・カテゴリページ(category)
 → category-{slug}.php  
 → category-{id}.php  
 → category.php  
 → archive.php  
 → index.php

・タグページ(tag)
 → tag-{slug}.php  
 → tag-{id}.php  
 → tag.php  
 → archive.php  
 → index.php

・カスタム投稿タイプのアーカイブ(archive)
 → archive-{post-type}.php  
 → archive.php  
 → index.php

※ このように、上から順に存在を確認して、最初に見つかったファイルが使用されます。

よく使うテンプレートファイル一覧

ファイル名用途
index.php最終手段。全てのページのバックアップ用
home.phpブログ一覧のトップページ(設定次第)
front-page.phpサイトのフロントページ用(静的ホームに設定した場合)
single.php投稿記事(投稿タイプ:post)用
page.php固定ページ用
archive.phpアーカイブ全般用
category.phpカテゴリーページ用
search.php検索結果ページ用
404.phpページが見つからなかったとき

テンプレート階層を活用するコツ

1. 名前付きテンプレートを優先的に使う

category-news.phppage-contact.php など、個別のスラッグやIDを使ったテンプレートは優先的に読み込まれるため、特定のページだけデザインを変えたいときに便利です。

👉表示条件を細かく制御したい場合は、【保存版】WordPress条件分岐タグまとめ|よく使う関数と使い方を一覧で解説 をチェックしてみてください。

2. get_template_part()と組み合わせて管理を効率化

共通のパーツ(ヘッダー・フッター・記事カードなど)を分割して、テンプレートファイルから呼び出すことで、保守性が上がります。

👉パーツ管理には get_template_part()の使い方と活用例 が役立ちます。

まとめ:テンプレート階層を理解すると開発が楽になる!

テンプレート階層のルールを把握しておくことで、「なぜこのファイルが読み込まれたのか?」が明確になり、カスタマイズも安心して行えるようになります。

WordPress開発における基本のキ、テンプレート階層。まずはこのルールをマスターして、より自由自在なテーマ作りを楽しみましょう!

補足:公式リファレンスもチェック!

🔗 関連記事