WordPressテンプレート階層とテンプレートファイルの基本ガイド

WordPressのテンプレート階層を図解する日本語のインフォグラフィック。男性キャラクターがsingle.phpを指差し、主要テンプレートの構造が表示されている。
WordPressテンプレート階層を視覚的に解説。各テンプレートファイルの役割と優先順位を理解しよう。

WordPressでテーマ開発を行う際、「どのテンプレートファイルがどのページに使われるのか?」を正しく理解することは非常に重要です。この記事では、テンプレート階層と主なテンプレートファイルの使い方について、図解とともにわかりやすく解説します。

テンプレート階層とは?

テンプレート階層(Template Hierarchy)とは、WordPressがどのテンプレートファイルを優先的に使用するかを決めるルールです。

たとえば、特定のカテゴリーのページを表示する場合、WordPressは次のような順序でテンプレートファイルを探します:

category-slug.php
category-ID.php
category.php
archive.php
index.php

これにより、細かくデザインを分けたい場合に柔軟な対応が可能になります。

代表的なテンプレートファイル

ファイル名用途
front-page.phpフロントページの表示
home.php投稿一覧の表示(ブログトップ)
single.php投稿ページの表示
page.php固定ページの表示
archive.phpアーカイブ(カテゴリー・日付など)ページの表示
category.phpカテゴリーページの表示
search.php検索結果ページの表示
404.phpページが見つからなかったときの表示
index.phpすべてのフォールバックテンプレート

よくある疑問:どこに書けばいいの?

たとえば、dynamic_sidebar()でサイドバーを表示したい場合、それが「投稿ページ」ならsingle.phpに書きます。

  • 固定ページ:page.php
  • 投稿ページ:single.php
  • カテゴリーページ:category.php
  • 全体共通:sidebar.phpに分けて、get_sidebar()で読み込む

といったように、目的に応じて適切なテンプレートファイルを使い分けましょう。

補足:テンプレートタグとget_template_part()

共通部分(例:ヘッダー、フッター、サイドバーなど)を管理するには、get_header()get_sidebar()get_footer()といったテンプレートタグが便利です。また、パーツ化して再利用できるget_template_part()も活用しましょう。

テンプレート階層を理解することで、WordPressテーマのカスタマイズが格段にスムーズになります。迷ったらまずindex.phpからスタートし、必要に応じてファイルを分岐・作成していくとよいでしょう。

関連記事

関連リンク