WordPressで完全オリジナルのテンプレートを作る

WPのオリジナルテンプレートはテーマ内でのみ作成可能ということで、なかなか融通が効かないです。しかし融通がきかない分、システマティックで爆速という利点があります。MTのテンプレートのようにいつでもどこでも作れる感じじゃなくて、それなりに制約があるので、それをまとめておきます。

WordPressのオリジナルテーマの基本的な作り方については、いろいろなところに情報があるのでそちらを参照ください。ここで解説するのは、完全にオリジナルなテンプレート1つの作り方です。

固定ページを1つ作る

  1. まず、テンプレートをつくるための固定ページを1つ作ります。Wordpressのテーマ内には規定のテンプレート以外で自由につくることができません。テンプレートはその階層順に従って読み込まれるだけで、それ以外の単独PHPファイルなどは無視されます。WPはDBとテンプレートと管理画面が互いに結びついているという機構になっているわけです。
  2. テンプレート階層 : その中で唯一単独で1ページ分のテンプレートを作成できるのは、固定ページでslugを割り振ったページになります。
  3. 固定ページを1つ作成し半角英数字でスラッグを作成したら、保存しておきます。(そのテンプレートの機能にもよりますが、テンプレートの機能としてのみということであればタイトルも本文も必要ありません。必要なのは固定ページであることと、スラッグのみです。)
    スラッグにはそのテンプレートの機能を連想させるような名前にした方が懸命です。
  4. 次に現在使用しているテーマ内にPHPファイルを作成してファイル名を、
    page-[slug].php

とします。これは固定ページのpage.phpも優先されます。page-[ID].phpもよいのですが、テンプレートが増えてくるにつれて中身を連想しにくくするのでやめておきましょう。中身に

<?php
print "page-[slug]";
?>

などを書いておいてから、http://www.example.com/blog/[slug]/にアクセスしてみましょう。正しく表示されていたらOKです。
テンプレート階層については本家が詳しいです。

Last update: 2017.01.04 (水)