我找到了答案,基于this post
如果有人想为子类别使用不同的模板。例如,如果您的类别按如下顺序排列:大陆->国家->城市。例如,您需要一个不同的城市模板。首先,我们看看城市是否有孩子,如果没有,我们称之为城市模板,最后一个孩子。在else语句中,我们查看当前类别是否有父类别,并在此基础上显示国家模板。而大陆类别模板将保持不变,它将具有类别模板。
// Different template for subcategories
function wpd_subcategory_template( $template ) {
$cat = get_queried_object();
$children = get_terms( $cat->taxonomy, array(
\'parent\' => $cat->term_id,
\'hide_empty\' => false
) );
if(!$children) {
$template = locate_template(\'category-country-city.php\');
} elseif( 0 < $cat->category_parent ) {
$template = locate_template(\'category-country.php\');
}
return $template;
}