WordPressのテーマの作り方その3

前回は、テンプレートを部品分けすることをやりました。
今回は1回目でさらっと書いた、テンプレート階層について、もう少し掘り下げていこうと思います。

テンプレート階層

テンプレート階層というのは、テンプレートの適用される優先度みたいなものです。
ページの種類によって決まっています。

カテゴリーページのテンプレートであれば、

  1. category-slug.php — 特定のカテゴリー用テンプレート
  2. category-ID.php — 特定のカテゴリー用テンプレート
  3. category.php — カテゴリーの汎用テンプレート
  4. archive.php — 汎用アーカイブテンプレート(タグ・日別アーカイブなどと共用)
  5. index.php

の順番でテンプレート階層が適用されると言うことです。

月間アーカイブや年間アーカイブなどの日付でのアーカイブは

  1. date.php
  2. archive.php
  3. index.php

で読み込まれます。

トップページならば、

  1. home.php
  2. index.php

の順です。

また、ページなら

  1. customTemplate.php — ページの属性欄で指定できる、カスタムテンプレート
  2. page-slug.php — 特定のページ用テンプレート
  3. page-ID.php — 特定のページ用テンプレート
  4. page.php — ページの汎用テンプレート
  5. index.php

です。

ですから、ブログのようなデザインがほとんど変わらないサイトの時は、index.phpだけとかでも作成可能なわけです。

デザインをかなりがっつり変えたい場合、customTemplate.phpや、category-id.phpなどで分けていき、index.phpはかなりシンプルに、汎用性を持たせてやると、柔軟なテーマが作成できます。

細かい話はCodexのテンプレート階層を見てもらえばさらに詳しく書いてありますので、そちらを参照して下さい。

需要があるかどうかはさておき、まだまだ続きます。