サンプルコード
single.php
//初期化
$file_name = '';
// [カテゴリスラッグ]-single.php というファイル名を指定
$cat_slug = $wp_query->query_vars["category_name"];
$file_name = $cat_slug . '-single.php';
//テンプレートを読み込み
$file = locate_template( $file_name );
//ファイルが存在しなかった場合(デフォルト)のテンプレート
if( !$file ) $file = locate_template( 'default-single.php' );
//テンプレートを読み込み
include_once( $file );
以下のカテゴリがある場合、
- ブログ(blog)
- ニュース(news)
- 事例(example)
上記例のsingle.phpによって以下のカテゴリ毎のテンプレートファイルに振り分けられるようになります。カテゴリのファイルが存在しなかった場合、default-singe.phpが読まれます。
- blog-single.php
- news-single.php
- example-single.php
カテゴリ毎にテンプレートを分けることで柔軟なデザインができるようになります。
archive.php
archive.phpも同様に下記の通りになります。
//初期化
$file_name = '';
// [カテゴリスラッグ]-archive.php というファイル名を指定
$cat_slug = $wp_query->query_vars["category_name"];
$file_name = $cat_slug . '-archive.php';
//テンプレートを読み込み
$file = locate_template( $file_name );
//ファイルが存在しなかった場合(デフォルト)のテンプレート
if( !$file ) $file = locate_template( 'default-archive.php' );
//テンプレートを読み込み
include_once( $file );
- 関連記事
-
-
WordPressのタイトル出力関数 2017/08/23
-
WordPress さくらサーバーでSSL(https)にならない場合の対処法 2017/06/08
-
WordPress カテゴリ毎にテンプレートファイルを分ける方法 2017/03/28
-
WordPress 個別記事に対する「パスワード保護」を利用する関数 2017/03/14
-
WordPress アーカイブページのURLを取得 2016/07/26
-