前回は get_header() を使ってヘッダーファイルを分割する方法を紹介しました。
WordPressには、ヘッダーやフッター以外のファイルを分割するための仕組みも用意されています。
それが get_template_part() です。
get_template_partとは
get_template_partは、指定したPHPファイルを読み込むための関数です。
例えば、記事一覧やプロフィール欄など、複数のページで使い回したい部分を別ファイルにしておき、必要な場所で呼び出すことができます。
<?php get_template_part(‘template-parts/profile’); ?>
template-parts/profile.php
が読み込まれます。
ファイル分割の実例
まず自分で作成したテーマのフォルダに新たにtemplate-partsという名前のフォルダを作ります。
その中に今回はcontent-test.phpというファイルを作ります。このファイルの中身は
<p>テンプレートパーツの中身です。</p>
の記述のみです。
部品の用意はこれだけで、後はindex.phpファイルで上記のファイルを読み込む記述を書いたたら完成です。
index.phpに記述するテンプレートパーツの読み込み
get_template_part(‘template-parts/content’, ‘test’);
引数の部分が少し分かりにくいですが、第一引数の部分でファイル名のconentまでを指定して、第二引数にハイフン以降の名前を指定すると、読み込むファイルを設定する事が出来ます。
今回は動作を理解する為に、文章一つをテンプレートファイルで用意しましたが、複数ページで表示するような内容はテンプレートファイルにまとめておくと、index.phpやpage.phpなどほかのテーマ内のphpファイルに挿入するのが簡単になったり、テンプレートファイルの中身を編集したら、挿入されている全てのページに変更が反映されるなど管理が楽になる部分があると思います。
このようにheaderやfooterだけでなく、複数箇所で利用できる記述などは、部品としてまとめておくと、変更の際の手間が一つ減り、品質向上に繋がります。

