BLOG

社員ブログ - 仕事から たわいの無い話まで ざっくばらんにご紹介します。

2017/02/15

(WordPress)カスタム投稿タイプの1記事ごとにテンプレートを選択できるようにする

(WordPress)カスタム投稿タイプの1記事ごとにテンプレートを選択できるようにする

今日は、我が社でもよく使っているWordPressに関する話題です。

カスタム投稿タイプ

WordPressの便利な使い方に、「カスタム投稿タイプ」があります。
通常の投稿と区別してカスタマイズできるため、「Advanced Custom Fields」等の別なプラグインと組み合わせて、入力・表示する項目を変えることができます。
管理画面上でも分かれて表示されるため、お客様に管理画面を説明するときにも重宝します。

記事ごとにテンプレートを切り替えたい

このように便利なカスタム投稿タイプですが、ちょっと困る場合があります。
特定のカスタム投稿タイプに投稿した記事だけ、記事ごとにテンプレートを切り替えたい場合でも、記事の投稿として扱うため、デフォルトのテンプレートが使われてしまいます。

既定の投稿を記事ごとにテンプレートを切り替える方法は見つかったのですが、上記の解決方法がなかなか見つかりませんでした。

プラグインの追加で対応

公式の「WordPressプラグインディレクトリ」ページで探したところ、指定したカスタム投稿タイプのみ、テンプレートを切り替えられるようにするプラグインがありました。

いくつかありましたが、手元のWordPressバージョン 4.7.2 で動作したのが、
「Template for Custom Post Types」でした。
https://ja.wordpress.org/plugins/template-for-custom-post-types/

「Template for Custom Post Types」のインストール方法

WordPressの管理画面からインストールできます。
「プラグイン」-「新規追加」で、「Template for Custom Post Types」を検索します。
緑色の画像と「作成者:Rahul Gandhi」が目印です。

上記のプラグインを「今すぐインストール」して「有効化」します。

「設定」-「Post Type Template」をクリックすると、どのカスタム投稿タイプでテンプレートを選べるようにするかを設定できます。

設定すると、指定したカスタム投稿タイプの入力画面に、「Select Template」という入力項目があらわれ、テンプレートを選べるようになります。

注意点

テンプレートには、あらかじめ名前をつけておく必要があります。
具体的には、テンプレートファイルの先頭に、以下のような記述を追加します。

<?php
/*
Template Name:料金プラン用テンプレート
*/
?>

合わせ技で解決できる

プラグインを組み合わせることで、テンプレート内でphpのコードを書いて動作確認するよりも早く作成することができます。
組み合わせ方やバージョンによっては期待した通りに動かない場合もありますが、実現方法で迷ったときは、プラグインがないか探してみるのが効率的です。

作者様に感謝しつつ、有効に使わせてもらいましょう!

OUR MISSION

私たちの仕事に対する思想・姿勢

「ITで人を豊かにする」

ITで人を豊かにするという信念のもと、日々新たな製品・サービスを開発・ご提供しております。最後まで誠意をもって取り組んで成果を出す。ご縁を頂いたお客様に安心と満足をご提供出来る様、誠心誠意取り組んで参ります。

CONTACT

お問い合わせはこちらから。

pageTop