私は私がこのようにphpファイルの名前を設定するどんなカテゴリーにもテーマテンプレートを設定できることを知っています:category-16.php
しかし私のカテゴリには多くのサブセットがあります16。そのテンプレートをcategory16のサブセットすべてに設定してほしい。
どうやって?
これを実現するために必要な機能が2つあります。まず、カテゴリが16のサブカテゴリーかどうかを知る必要があります。これは cat_is_ancestor_of
です。次に、あなたは locate_template
のように、あなたはそのカテゴリーに16のテンプレートを使わせる必要があります。これを知っていれば、このようにカテゴリページに使用するテンプレートを決定する関数にフィルタを構築できます。
add_filter ('category_template', 'wpse24089_category_template');
function wpse24089_category_template( $template ) {
$current_cat = get_queried_object_id();
if (cat_is_ancestor_of (16, $current_cat))
$template = locate_template( 'category-slider.php' );
return $template;
}