ブログ

フリーランスとして働くWebデザイナーの備忘録・メモ

WordPressのテンプレート階層(優先順位)を知る

WordPressでは、訪問者がサイトにアクセスした場合静的フロントページがあるかどうかを判断します。
静的とは、例えば、index.html等の静的ファイルがあるかどうかを判断し、あれば静的ファイルを返します。
ない場合はテンプレート階層を用い、リストの上から順に、ファイルがないかどうか探し最初に見つけたテンプレートを使います。
例えば、カテゴリーを選択、表示させようとした場合。

  • 「category-スラッグ名.php」というテンプレートファイルを探す。
  • 「category-スラッグ名.php」ない場合、ID がついたカテゴリーファイル
    「category-カテゴリーID.php」を探す。
  • 「category-カテゴリーID.php」がない場合、「category.php」を探す
  • 「category.php」がない場合、「archive.php」を探す。
  • 「archive.php」がない場合、「index.php」を適用させる。

このように、上から該当するテンプレートファイルを探し、あれば適用、なければ次のステップへ進みます。
違ったデザインにしたいのなら、スラッグ名かID名のついたカテゴリーテンプレートを用意すればOK。

このテンプレートの階層順がどうなっているのか、WorsPress Codexで解説してくれています。

WordPress Codexテンプレート階層の解説

カテゴリだけではなく、投稿記事、固定ページ、アーカイブ、タグ、フロントページ等、どのテンプレートが先に適用されるのかを上記で知ることができます。