【WordPress】親カテゴリーのテンプレートを子カテゴリーにも適用する方法

2013.10.21 WordPress
【WordPress】親カテゴリーのテンプレートを子カテゴリーにも適用する方法

WordPressでは、カテゴリーごとにテンプレートファイルを用意することで、それぞれに個別のテンプレートを適用することができます。

しかしその場合、カテゴリーごとにひとつずつテンプレートファイルを用意しなくてはならず、子カテゴリーに親カテゴリーと同じテンプレートを使用したい場合(結構多いはず)には、それぞれのテンプレートファイルを別々に用意しなくてはなりません。

そういった場合に、子カテゴリー用のテンプレートファイルを用意しなくても、子カテゴリーに親カテゴリーのテンプレートファイルを適用する方法。function.phpに下記ソースを追加します。

//++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
//親カテゴリーのテンプレートを子カテゴリーに適用
add_filter( 'category_template', 'my_category_template' );
function my_category_template( $template ) {
$category = get_queried_object();
if ( $category->parent != 0 &&
( $template == "" || strpos( $template, "category.php" ) !== false ) ) {
$templates = array();
while ( $category->parent ) {
$category = get_category( $category->parent );
if ( !isset( $category->slug ) ) break;
$templates[] = "category-{$category->slug}.php";
$templates[] = "category-{$category->term_id}.php";
}
$templates[] = "category.php";
$template = locate_template( $templates );
}
return $template;
}

詳しくは子カテゴリのアーカイブページを親カテゴリ用のテンプレートファイルで表示しよう(WordPress私的マニュアル)で解説してくれています。

WordPressテーマ『HIGHLAND』公開しました

WordPressテーマ『HIGHLAND』を公開しました

このブログで紹介しているカスタマイズを、これでもかと盛り込んだ高性能なテーマになっております。商用・非商用問わず無料、是非ご利用ください。

ブログ集客メール講座登録フォーム

「売上が不安定で、月末になるといつも不安……」
「営業が苦手で新規開拓がうまくいかない……」
「Webが苦手でブログをうまく活用できない……」

個人起業家・フリーランスのあなた、こんなお悩みはありませんか?

実は僕も、独立して最初に直面したのが「集客」の壁でした。

しかし今は、1年の大半をベトナムで過ごしながら、フリーランスのWebディベロッパーとして生計を立てています。

僕がなぜ、時間・場所・人間関係に縛られずに暮らせるようになったのか?

その答えは「ブログ」にあります。

今なら、「初心者の人が成果を上げるため」のブログ集客ノウハウを、メール講座限定でお伝えします。

興味のある人は、今すぐ以下から登録【無料】を!

ブログ初心者が生き残るためのブログ集客メール講座

柴田竹思

柴田竹思

日本&ベトナム二拠点生活中のWeb系フリーランス。最近は育児6:仕事4のバランスで生活してます。これでもかってくらい奥さんの尻に敷かれてる座布団系男子です。

プロフィールはこちら