【ワードプレス】テンプレートファイルとテンプレート階層WordPress2022年05月12日ワードプレスは、「テーマ」と呼ばれるファイル群からWebサイトが構築されています。そのテーマを作る上で大切な決まり事なので押さえておきましょう。テンプレート階層テンプレートファイルとテンプレート階層テンプレートファイルとは?簡単に言うと、ワードプレスのルールに沿って作られたPHPファイルのことをテンプレートファイルと呼びます。通常Webサイトを作る際、トップページと他のページのデザインが全く同じというケースは少なく、各ページの内容ごとに異なったデザインで作成していく場合がほとんどです。ワードプレスでは、アクセスされたページに合わせて表示するファイルを自動的に変更してくれるので、そのためにちょっとしたルールが必要になるわけです。個別投稿の記事を出力するにはsingle.php、固定ページを出力するにはpage.phpなど、「○○ページの出力には○○.phpを読み込んでね」というように、そのページに合わせてテンプレートファイルを作成していくことになります。主なテンプレートファイル)のテンプレートファイルにも、実は細かくそれぞれに優先順位があります。その優先順位のルールがテンプレート階層です。ワードプレスは、アクセスされたページによって優先順位が高いテンプレートファイルを探し、それに該当するテンプレートファイルがあればそれを表示する仕組みです。例:「404ページ」の優先順位1404ページを表示するために、はじめは404.phpというファイルを探しに行く。2テーマ内に404.phpが存在する場合は404.phpを表示。存在しない場合は次の優先順位index.phpを表示。この優先順位は、テンプレートファイルのファイル名によって決定されるため、テンプレート階層を理解してテンプレートファイルを作成しておかないと、意図したページが表示されない!意図したページデザインと違う!といったことが起こってしまいます。使うテンプレートファイルのテンプレート階層を見ていきましょう。各ページのテンプレート階層トップページのテンプレート階層トップページは、一番最初に表示されるメインのページで、多くの場合は他のページとはデザインが異なるものになります。テンプレートの優先順位はfront-page.phpになります。個別投稿ページとは、ワードプレスの「投稿」を使った通常の記事ページのことです。他にもカスタム投稿タイプというオリジナルの投稿タイプがあります。優先順位が高いのはカスタム投稿タイプのテンプレートファイルですが、カスタム投稿タイプを利用していない場合は、「single.php」または、「singular.php」にするといいです。この一覧ページはデザインも似たものになる事が多いのでそれぞれに分けなくても「archive.php」などでひとつのテンプレートファイルにすると管理しやすいです。index.php月別記事一覧ページのテンプレート階層ひとつ前のカテゴリー別記事一覧ページのテンプレート階層で説明しましたが、この月別記事一覧とカテゴリー別記事一覧はデザインが似たものになる事が多いので「archive.php」または、「index.php」のどちらかを準備すればひとつのテンプレートファイルで各記事の一覧を作ることができますよね。index.php詳細なテンプレート階層はこちら!まとめここまでテンプレート階層の優先順位を見てきましたが、どのテンプレート階層を見ても最終的に「index.php」にたどり着きます。デザインが全ページ共通なら「index.php」のみあればいいという事です。逆に言えば、ワードプレスのテーマには最低限「index.php」が必要という事ですね。実際、ワードプレスでテーマを作成する際、「index.php」、「style.css」、「functions.php」の3つのファイルがないとテーマとして認識されません。ワードプレスでWebサイトを構築する際、テンプレート階層の設計はとても重要になるので、しっかり押さえておきたいですね。