web制作

wordpressでget_template_partを利用してテンプレートを細分化する

この記事の要点!

  • 任意のファイル名でテンプレートファイルを制作できる
  • < ?php get_template_part( '呼び出すphpファイル名' ); ? >でファイルを呼び出すことができる

wordpress触るとヘッダーやフッター、サイドバーをテンプレート化できてhtmlの時に比べ色々便利になるんですが、もうちょっとテンプレート化したくなります。

wordpressには、get_template_partというものがありまして、これを使えば、header.phpとか以外にも自分でテンプレート設定しやすくなるので、それについて。

使いこなすとwordpressのメンテナンスがやりやすくなります〜。

wordpress get_template_partの使い方

使い方はかなり簡単です。

イメージをお伝えするなら、<?php header(); ?> とするとheader.phpが呼び出せますよね?
これと全く同じ要領です。

呼び出したい場所で以下のように記述します。

<?php get_template_part( ‘sns’ ); ?>

こう記述すると、sns.phpが呼び出されます。公式的にすると

<?php get_template_part( ‘呼び出すphpファイル名’ ); ?>

という感じです。

これで自分の作ったファイルがテンプレート化できます。

get_template_part で作ったファイルをフォルダにまとめとく

get_template_partしてファイルを量産してくると、テンプレートディレクトリ階層にフォルダがたまりまくるので、僕はget_template_partで使うファイルだけを入れるフォルダを作ってます。

こんな感じに

get_template_part template-partstemplate-partsというフォルダを作って、僕はそこにファイルを入れてます。

ちなみにtemplate-partsフォルダに入っているので、

<?php get_template_part( ‘template-parts/呼び出すphpファイル名’ ); ?>

こういう感じに呼び出します。

ディレクトリに入っていても指定できます。

余談ですが、wordpressの無料・有料とわず、パーツ毎にphpファイルを分解しているのはよく見るのですが、みんなテーマディレクトリのrootに置いてるので見にくいんじゃないかと思うのですが、僕だけですかね…?

wordpressでget_template_part使ってテンプレート化しとくとメンテナンスの時に幸せになれる

ヘッダーやフッター以外にもテンプレート化しておくとメンテナンス時にかなり楽になります。

SNSボタンとか、記事一覧の部分とか。あと投稿ページ・固定ページの記事部分とかもテンプレート化したりするといいかなと。
この辺は共通部分になるので、何よりコード業が減ります。

一箇所触るだけで全体のタグが変わるので楽チンです。

 

おわり〜