サイトアイコン WEB-Geek-Site.com

WordPrss★テンプレートを投稿記事ごとに替える

テンプレートを投稿記事ごとに替える

固定ページは、phpファイルを作っておけばテンプレートとして選べるようになるけれど、投稿ページで、テンプレートを作るにはどうしたらいいのだろう。。。

WordPress4.7から「投稿」についても「固定ページ」と同様にテンプレートを選択することができるようになているそうです。

今までの方法

新規にphpファイルを作り、ファイルの冒頭に下のようにコードを入れおくと、固定ページのテンプレートとして認識してもらえました。
例)snarfer.php というファイルを作り、冒頭にコードを記述する。
すると、snarfer.php が “Snarfer” テンプレートとして定義され、”Snarfer” を変更することで、固定ページテンプレート名 (Template Name) を変更することができます。このテンプレート名は、管理画面のテーマの編集ページのテンプレート一覧に表示されます。

<?php
/*
Template Name: Snarfer
*/
?>

新しい方法

今までは投稿タイプが「page」に対してだけ、テンプレート化することが可能でしたが、バージョン4.7からは、さまざまな投稿タイプに対してテンプレートを指定することができるようになりました。
具体的には、「Template Post Type」という新しいプロパティができ、投稿タイプをカンマ区切りで指定するして「page」以外の投稿タイプにもテンプレートを適用できるようになりました。

<?php
/*
Template Name: PostTemplate
Template Post Type: post, page
*/
?>
投稿タイプが、「post」と「page」で有効なテンプレートです。
Typeは、カンマ「,」で区切る必要があります。

この状態で投稿の編集画面を開くとテンプレートを選択できるようになります。また、「Template Post Type」で「page」と指定してあるので、固定ページの編集画面を開いても、このファイルをテンプレートとして選択できるようになっています。

今まで「ページ」でしか適用できなかったテンプレート機能を他の投稿タイプにも使えるようになって、とっても便利になりました!!

参照サイト:https://debug-life.net/entry/1885

モバイルバージョンを終了