【WordPress 自作テーマの作り方】作るときに、最低限必要なファイルについて【001】

・WPテーマのPHPファイルの呼び出し機構を理解する
・参考になるテーマを探す(WP標準テーマがおすすめ)
・ファイル構成を最低限にして、外枠だけ作成してみる

素人でも地道にやれば、簡単に作れます。逆にいうと、簡単に作れるような仕組みをWordpress側が用意してくれていると考えたらよいかと思います。また、作成するのに必要な情報は、「WordPress Codex 日本語版」にあります。

WPテーマのPHPファイルの呼び出し機構を理解する

優先順位
カテゴリーアーカイブcategory.phparchive.phpindex.php
年月アーカイブdate.phparchive.phpindex.php
個別記事single.phpindex.php
個別ページpage.phpindex.php
トップページhome.phpindex.php


wp-template-hierarchy.jpg (2880×1800)
テンプレート階層 - WordPress Codex 日本語版

表示呼び出し機構を簡単にまとめました。本当のところ(詳細)は上記のリンク先を見てください。

簡単に説明すると、例えば、ブラウザからURLを指定してアクセスするときに、そのページが「カテゴリーアーカイブ」の場合は、「category.php」が表示されます。このファイルがない場合は、「archive.php」が採用され、このファイルもない場合は「index.php」が呼び出されます。つまり、index.phpというのは、一番最後の砦になっているわけですね。

参考になるテーマを探す(WP標準テーマがおすすめ)

Twenty Twelve — 無料の WordPress テーマ
Twenty Thirteen — 無料の WordPress テーマ
Twenty Fourteen — 無料の WordPress テーマ
Twenty Fifteen — 無料の WordPress テーマ
Twenty Sixteen — 無料の WordPress テーマ

WPに標準でついてくるTwentyシリーズのテーマが参考にするのにはよいと個人的に思います。私はTwenty Twelveあたりを参考にどういう構造になっているのかをソースを読みながら理解を深めました。あと、Twenty Fourteenも参考にしました。

シンプルで教科書のお手本のような感じで書かれているものが良いと思うのですが、なかなかその条件を満たすものが見つかりません。また古いテーマは書き方がやっぱり古いので参考にするのは良くないかとは思います。

ファイル構成を最低限にして、外枠だけ作成してみる

index.php (トップページ)
archive.php (年月アーカイブ、カテゴリー、タグ一覧)
page.php (個別ページ)
single.php (個別記事)

header.php (ヘッダー)
content.php (コンテンツ部分)
footer.php (フッター)

sidebar.php (サイドバー)

functions.php (関数群)
style.css (スタイルシート)

こんな感じかと思います。ファイルは後から追加できるので、最低限の構成からスタートしたほうが良いかと思います。全て中身が空でもOKなので、まずは空にして、徐々にコードを書いていくという手法がおすすめかも・・。一度型枠を作れれば、自作テーマーをつくるのは簡単になると思います。

また「Twenty Twelve」のテーマーで、category.phpを削除すれば、archive.phpが使われるようになるという風に、現在のテーマーから少しずつファイルを削っていくという方法でも、最小限の構成を作りだすことは可能かと思います。

※style.cssは最低限の記述が必要です。

style.cssの書き方

/*
	Theme Name: テーマ名
	Description: 
	Theme URI: 
	Author: xxx
	Author URI: 
	Version: 0.0.1
	Tags: 
*/
テーマの作成 - WordPress Codex 日本語版

テーマと認識させるためには、style.cssのヘッダー(コメント行)を上記のように書く必要があります。

テンプレートファイル(PHP)の読みこみ関数

関数リファレンス/get header - WordPress Codex 日本語版
関数リファレンス/get footer - WordPress Codex 日本語版
関数リファレンス/get sidebar - WordPress Codex 日本語版

header.php、footer.php、sidebar.phpは上記のWordpressが用意している関数で読みこまれます(インクルードされます)。

関数リファレンス/get template part - WordPress Codex 日本語版
<?php get_template_part( 'content', get_post_format() ); ?>

get_template_partもよく使われてるようなので、これも知っておくと便利です。get_template_part( 'content', "none")みたいに呼び出すと、content-none.phpがインクルードされます。

header.php、footer.php

関数リファレンス/wp head - WordPress Codex 日本語版
テンプレートタグ/wp footer - WordPress Codex 日本語版

それぞれのファイルの中で、wp_head()、wp_footer()を呼び出すことがWordpressのテーマでは暗黙の了解になっています。

最低限のルールを守って作らないと、動作しないプラグインなどが出てきます。上記の2つの関数を埋め込むことで、プラグインなどが、ヘッダーやフッタに、スクリプトやスタイルシートを追加することが可能となります。

関連のある記事

スポンサーリンク

コメントを残す

メールアドレスは公開されません。
また、コメント欄には、必ず日本語を含めてください(スパム対策)。