WordPress テンプレートファイルとテンプレート階層

  WordPress

WordPressのテーマを構成しているファイルにはいろいろな種類のファイルがあり、それらを「テンプレートファイル」と呼びます。

テンプレートは、訪問者から要求されたページを生成するために使われる PHP ソースファイルです。テンプレートファイルは HTML、PHP、そして WordPress テンプレートタグで構成されています。

WordPress Codex : テーマの作成 : テーマテンプレートファイル

 

テンプレート階層

WordPress テンプレートはパズルのピースのように組み合わせられ、サイト上で Web ページを表示します。一部のテンプレート(例: ヘッダー・フッターテンプレート)はすべての Web ページ内で使用される一方、他のテンプレートはある条件の下でのみ使用されます。

WordPress Codex : テンプレート階層

テンプレートファイルには【category.php】や【single.php】のようにある条件の下でのみ使用されるファイルがあり、それらのファイルには優先順位がつけられています。

たとえば、カテゴリーのアーカイブ(一覧)ページの場合は、次の優先順でテンプレートファイルを探し、該当したファイルで一覧ページを表示します。

  1. category-$slug.php
  2. category-$id.php
  3. category.php
  4. archive.php
  5. index.php

 

たとえば、カテゴリー「news」があり、このカテゴリーのIDが「6」だとします。
このカテゴリーのアーカイブページをリクエストした場合、

  1. まず最初に
    【category-news.php】を探し、ファイルがあればカテゴリ「news」に属する投稿一覧を表示します。
  2. ファイルが無ければ
    【category-6.php】を探し、ファイルがあれば同様に投稿一覧を表示します。
  3. 無ければ
    【category.php】を探し、ファイルがあれば同様に投稿一覧を表示します。
  4. さらに無ければ
    【archive.php】を探し、ファイルがあれば同様に投稿一覧を表示します。
  5. 最終的には
    【index.php】を使ってカテゴリ「news」に属する投稿一覧を表示します。

※【index.php】はテンプレートファイルに必ず存在しなければなりません。

 

テンプレート階層によるテンプレートファイルの優先順位

優先順位【高い】 > > > 【低い】
アーカイブページ index.php
作成者別 author-$nicename.php author-$id.php author.php archive.php 2ページ以降
【true】
paged.php
カテゴリー category-#slug.php category-#id.php category.php
カスタム投稿 archive-$posttype.php
カスタム分類 taxonomy-$tax-$term.php taxonomy-$taxonomy.php taxonomy.php
日付別 年別 date.php 2ページ以降
【false】
月別
日別
タグ tag-$slug.php tag-$id.php tag.php
個別ページ・投稿ページ
添付ファイル投稿 $mimetype.php $subtype.php $mimetype_$subtype.php attachment.php single.php singular.php
カスタム投稿 single-$posttype.php
ブログ投稿 single-$post.php
個別ページ・固定ページ
ページテンプレート カスタムテンプレート $custom.php page.php
標準テンプレート page-slug.php page-id.php
サイトフロントページ (front-page.php)
ページを表示 home.php
投稿を表示
ブログ投稿インデックスページ
コメントポップアップページ
comments-popup.php
404エラーページ
404.php
検索結果ページ
search.php

 

テンプレートファイル

また、WordPressのテーマを構成するファイルの中で、必ず必要なファイルは下記2つのファイルとなっています。

  • index.php:トップページ表示用のテンプレートファイル
  • style.css:サイトデザイン用のスタイルシートファイル

これら2つのファイルだけでテーマを構成することもできます。

WordPress Codex : テーマの作成 : 基本的なテンプレート

WordPress Codex : テーマの作成

 

  WordPress     by