テンプレートパーツ化するテンプレートパーツ化する2012年9月12日テンプレートパーツとは1つのページを”部品”に分ける一般的なサイト構造は、ヘッダー、投稿記事、サイドメニュー、フッターなどから構成されています。WordPressでは、通常、それぞれの部分に対応したPHPファイルを作成します。これらのPHPファイルは”部品”のような役割を果たすので、テンプレートパーツと呼ばれます。インクルードタグで読み込みテンプレートパーツは、「インクルードタグ」で読み込み、サイトに反映させることが出来ます。インクルードタグはWordPressで用意されている関数です。下図は、テンプレートindex.phpに書いた各種インクルードタグで、テンプレートパーツを読み込んでいる様子を示しています。異なるテンプレート間でパーツを共用できるテンプレートパーツ化すると、異なるテンプレート(トップページ用、カテゴリ表示用、固定ページ用・・・etc)間でパーツを共用できます。パーツ化するとメンテナンス性が向上するテンプレートパーツを利用することで、サイトのメンテナンスが容易になります。上図のサイトでメニューバーを変更する場合は、header.phpのファイル1つを修正するだけで済みます。テンプレートファイルを分割して、パーツファイルを作成するindex.phpファイルを分割して、4つのPHPファイルを新規作成します。id=”main”>タグまでをヘッダー部品とします。id="main">content.phpループ内の、投稿記事を表示する部分を抜き出します。?></div></article>sidebar.phpサイドメニューの部分を切り出して、sidebar.phpとします。id="sidebar"><h4>サイドバー</h4><ul><li>サイドバー設置予定</li></ul></aside>footer.phpdiv#mainの終了タグから、元のHTMLファイルの最後までをfooter.phpとします。div#main開始タグまでをheader.phpに入れたので、それに対応する形にしています。reserved.</p></footer></div><!--container--></body></html>index.php(仮)元のHTMLファイルのうち、以上の4つのパーツが切り取られた残りを、とりあえずindex.phpとしておきます。大部分が切り取られていましたね。index.phpにインクルードタグを挿入するパーツとして切り取られた場所に、インクルードタグを書きます。ヘッダー、サイドバー、フッターに関しては専用のWP関数が用意されています。content.phpは、パーツファイルを読み込むための汎用のWP関数を使います。?></div><?phpget_sidebar();get_footer();get_template_part()テンプレートパーツを読み込むWordPress関数。引数に、インクルードするファイル名を指定する。拡張子(.php)は省略して指定する。ファイル最後のPHPブロック終了タグは省略OKPHPブロックの終了タグがファイルの最後にくる場合は、省略できます。まとめ2ステップで完了します。手順はシンプルですね。index.phpを分割して、header.php、content.php、sidebar.php、footer.phpにカット&ペースト。index.phpにインクルードタグを挿入する。テンプレートファイル分割&インクルードタグの使い方プレゼン形式で、同様の内容を解説しています。2012年5月Authorプログラマー:TaeWordPressのサイト制作を始めて2年になりました。WordPressテーマの作り。