この記事は2014年8月10日に書いたもので、内容が古い可能性がありますのでご注意ください

WordPress:投稿に使う記事パーツ(テンプレート)をテーマフォルダの外に置くには

最近では、WordPressの記事も、がっつりプロの方が書いておられることが多いので、私なんぞが書くのはどうも気が引けますが。便利なTipsを見つけたのでご紹介。

WordPress|別テーマのテンプレートファイルを読み込む方法(マルチサイト構築に便利)

テーマにオリジナルなテンプレートを追加する方法はスタンダードなので、私はテーマに限らず投稿記事でも便利に使っています。

たとえば、季節の案内のような、あとで違う内容に一括で書き換えたいようなことをたくさんの記事に書く必要があるとき、各記事に書いたらあとで直すのが大変。変更した部分だけ別途テンプレートにして、それを記事内の必要な場所に読み込ませるようにしておくのが◎。他のアプリやCMSで「スニペット」と呼んでいるやつみたいな感じですね。記事パーツです。

ところがこのオリジナルテンプレートをテーマフォルダ内においておくと、テーマを取り替えたときにごっそり消え失せてしまいます(いちいち手作業で移すのも面倒、というか忘れてしまうんですよね)

なので、そういう記事パーツのテンプレートだけ集めて、今使っているのとは別の専用フォルダに入れておいて、記事にはそれを呼び出すタグを書いておいたらば、テーマがいかように変わろうとも、記事内に呼び出される内容は影響なく使えるんじゃないかと思い、そのやりかた(テーマフォルダ外のファイルをincludeする方法)を探してみました。

いろんなキーワードで3回くらい検索したら、上記のサイトでどんぴしゃりの方法が見つかりました。

やってみたらさくっと成功。 「get_theme_root」 だって。そんなのあるんだね。便利便利。みんなも使ってみて!

追記:
…と、ここまで書いて、
「そういえばWordPressではウィジェットという機能があるので、それを記事内に配置できれば済む話か?」
と思い、ちょっとググってみましたが、見つかった方法はいずれも functions.php に手を加えないといけないようで、そうするとやっぱりテーマを取り替えると機能しなくなるので断念。

テンプレートファイルの追加は管理画面からはできないので、ウィジェットより手間といえば手間だけど、用途が決まっていれば最初にまとめて作ちゃえるのでそんなにストレスはないと思います。

スポンサーリンク

シェアする

  • このエントリーをはてなブックマークに追加

フォローする

スポンサーリンク