【WordPress】親カテゴリーのテンプレートを子カテゴリーにも適応する方法
MENU
  1. HOME
  2. WordPress / カスタマイズ
  3. 【WordPress】親カテゴリーのテンプレートを子カテゴリーにも適応する方法

最近の作業実績

  • 2024年04月06日非レスポンシブのサイトをレスポンシブ化いたしました。
  • 2024年04月05日テーマファイルが編集できない不具合を解消いたしました。
  • 2024年04月04日WordPress、テーマ、プラグイン、のバージョンアップを担当いたしました。
  • 2024年04月03日不具合で表示されなくなったサイトを表示される状態まで復旧いたしました。
  • 2024年04月02日お問い合わせフォームを再構築いたしました。
  • 2024年04月01日不具合で表示されなくなったサイトを表示される状態まで復旧いたしました。
  • 2024年03月31日サーバー移管に共に表示されなくなったサイトを表示される状態まで復旧いたしました。
  • 2024年03月30日WordPressの操作方法をサポートいたしました。
  • 2024年03月29日サイドバーに人気記事を表示させる仕組みを導入いたしました。
  • 2024年03月28日テキスト等の簡易な修正を行いました。
  • 2024年03月27日アイキャッチが表示されない不具合を修正いたしました。
  • 2024年03月26日WordPressの操作方法をサポートさせていただきました。
  • 2024年03月25日サイト上で発生していたリンクの不具合を解消いたしました。
  • 2024年03月24日不具合で表示されなくなったサイトを表示される状態まで復旧いたしました。
  • 2024年03月23日WordPress、テーマ、プラグイン、のバージョンアップを担当いたしました。
  • 2024年03月22日WordPressにログインできない不具合を解消いたしました。
  • 2024年03月21日既存サイトにセキュリティ対策を導入いたしました。
  • 2024年03月20日メールフォーム周りで発生していた不具合を解消いたしました。
  • 2024年03月19日記事一覧をカテゴリー単位で表示できる様にカスタマイズいたしました。
  • 2024年03月18日WordPress、テーマ、プラグイン、のバージョンアップを担当いたしました。
  • このエリアには直近の制作実績を一部掲載しております。
  • 制作実績はリアルタイム反映ではありません。

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

親カテゴリーのテンプレートを子カテゴリーにも適応させるカスタマイズをご紹介します。コピペだけで実装できるカスタマイズです。興味のある方は参考にしてください。

この記事は約 3 分で読めます。

親カテゴリーのテンプレートは子カテゴリーでは使用できない

WordPressのカテゴリーページは、カテゴリーごとに独自のテンプレートファイルを適応することができます。

これは便利な機能なのですが、親子関係のあるカテゴリーで、子カテゴリーに親カテゴリーと同じテンプレートを適応させたい場合、これがちょっと面倒なのです。

例えば、親カテゴリーのスラッグが『test』の場合、独自のテンプレートを適応させるときは『category-test』(一例です)というファイルを作成します。

このファイルはデフォルトでは親カテゴリーのみに適応され、子カテゴリーでこのファイルを使用することはできません。

子カテゴリーのスラッグが『test2』の場合、『category-test』を複製してファイル名を『category-test2』としなければなりません。

子カテゴリーが100個あった場合は、100個のファイルを作成しなければならないというわけです。

そんな面倒なことはしていられません。

そこで、親カテゴリーのテンプレートを子カテゴリーにも適応させるカスタマイズの出番です。

親カテゴリーのテンプレートを子カテゴリーにも適応させるカスタマイズ

カスタマイズはコピペでOKです。
下記のコードを『function.php』に追記してください。

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;
}
add_filter( 'category_template', 'my_category_template' );

上記コードの参考サイト

上記のコードを『function.php』に追記するだけで、親カテゴリーのテンプレートを子カテゴリーにも適応させることができます。

まとめ

親カテゴリーのテンプレートを子カテゴリーにも適応させるカスタマイズをご紹介しました。

カテゴリーに親子関係があり、カテゴリーごとにデザインを変更したい場合などに、使う機会のあるカスタマイズです。

興味のある方は参考にしてください。

Wordpressのカスタマイズや不具合など
何かお困りのことはありませんか?

Wordpressに関連するあなたのお悩み、解決いたします。
次のような方は、お気軽にご相談下さい。

  • Wordpressサイトをカスタマイズしたいが、やり方が分からないで困っている。カスタマイズの知識が豊富な人に任せたい。
  • Wordpressサイトに不具合が発生したが、直し方が分からない。不具合の修正経験が豊富な人に任せたい。
  • 既存サイトにWordPressを導入したいが、やり方が複雑で自分ではできそうにもない。経験が豊富な人に任せたい。
  • WordPressがハッキングされたが修正の仕方が分からない。サイトを元通りにできる人を探している。
  • Wordpressで0からサイトを制作したいが、自分ではできそうにもない。プロにサイト制作を委託したい。

一つでも該当する方は、以下のフォームからお気軽にご相談下さい。

WordPressに関して今すぐ相談する

著者:takaya kondo

岡山在住のWordPress専門フリーランサーです。Wordpressを使ったWEBサイト制作を中心に10年間ほど活動させていただいています。

Wordpress関連の記事でお役に立てれば幸いです。

【関連記事】あなたが興味のありそうな関連記事をご紹介します。

コメントを残す

(必須)

CAPTCHA