【WordPress】投稿やカスタム投稿タイプでも表示テンプレートを管理画面から選択できるようにする方法

【WordPress】投稿でも表示テンプレートを管理画面から選択できるようにする方法

WordPress 4.7からの機能になりますが、今まで固定ページで出来ていたテンプレートの選択を投稿やカスタム投稿でも出来るようになっています。

投稿では、single-{slug}.phpといったテンプレートを作ったり、独自で何かしら機能を付け足さなければならなかったと思いますが、この機能を使うと楽できそうです。

投稿やカスタム投稿でも管理画面からテンプレート選択出来るようにする。

よっひー(@yosiakatsuki)です。

今まで固定ページではテーマのテンプレートファイルにTemplate Name:から始まるコメントを一番初めに書いたテンプレートファイルを作れば、管理画面からテンプレートを変更することが出来ました

このカスタムページテンプレートを投稿やカスタム投稿タイプでも選択出来るようにする方法がありました

Template Post Type: をコメントに追加

カスタムページテンプレートの書式は次のようになっていたと思います

<?php
/**
 * Template Name: テンプレート名
 */

get_header(); ?>
~~などなど

これを投稿ページでも選択可能にするためには次のようにします

<?php
/**
 * Template Name: テンプレート名
 * Template Post Type: post
 */

get_header(); ?>
~~などなど

Template Post Type: postを追加しました!

ただ、Template Post Type: postと書いてしまうと、固定ページでテンプレートの選択ができなくなってしまうので、固定ページの他に投稿も選択したい場合は投稿タイプをカンマ区切りで書いていきます

<?php
/**
 * Template Name: テンプレート名
 * Template Post Type: page, post
 */

この機能はWordPress 4.7から使えるようですので、「うまく選択できるようにならないなぁ…」と言う場合はWordPressのバージョンも確認してみてくださいね!

テンプレートが使われているか判断して追加で処理する場合は、こちらも参考にしてみて下さい▼