wordpressのテンプレート階層

電脳備忘録

wordperssのURL構造がいまいちわかりません。以前さわっていたときの私はどう理解していたのでしょう?きっと動いているからいいやくらいのいい加減な感じだったと思います。
それはそうと、wordpressはテンプレート階層というルールに従ってテンプレートファイルを読みに行く順番がきまっているようですね。

先に一番下階層のテンプレートを参照しに行き、そのテンプレートがなければその上の階層のテンプレート、そのテンプレートがなければさらに上のテンプレートとといった具合に読みに行き、最終的にindex.phpの内容を表示するみたい。
しばらくいじって、いろんなサイトを読みあさってようやく何となく理解したつもりだけど、なんかとっつきにくいなぁ...。

訪問者が WordPress サイト上のページにアクセスしたとき、WordPress は次のように動きます。
URI に含まれるクエリ文字列とクエリタイプを照合し、要求されているページの種類(メインページ、カテゴリーページなど)を判断。
該当するページ種類のテンプレート階層に基づき、現在のテーマディレクトリ内からテンプレートファイルを探す。
最初に見つかったテンプレートファイルを用いて、要求されたページを生成。
例えば、ブログが http://example.com/wp/ にあり、訪問者が http://example.com/wp/category/apple/ という「りんご」カテゴリーのアーカイブページにアクセスしたとしましょう。WordPress は、現在のテーマディレクトリの中から「りんご」カテゴリーに使えるテンプレートファイルを探します。

カテゴリーページのテンプレート階層は次のとおりです。WordPress はこのリストの上から順に、ファイルがないかどうか探していき、最初に見つけたファイルを使います。

  • category-slug.php -- 特定のカテゴリー用テンプレート
  • category-ID.php -- 特定のカテゴリー用テンプレート
  • category.php -- カテゴリーの汎用テンプレート
  • archive.php -- 汎用アーカイブテンプレート(タグ・日別アーカイブなどと共用)
  • index.php
WordPress Codex 日本語版:テンプレート階層
Newer
Older
Dark
Light
menu