У меня есть категория «Программа», и эта категория имеет дочерние элементы. (Например, программа -> Улучшение скорости)Просмотр пользовательского шаблона для конкретных категорий
Я хочу отобразить шаблон пользовательской категории для дочерних элементов категории программы.
Я обнаружил, что: WordPress имеет функцию template_include, которая выполняется непосредственно перед тем, как WordPress содержит предопределенный файл шаблона. Это можно использовать для переопределения поведения шаблона WordPress по умолчанию.
Так что я пытаюсь использовать этот код в моем файле functions.php:
function wpse_template_check($template) {
if (is_category()) {
// Get category information
$cat = get_query_var('cat');
// read the category parent
$parent_category = $cat->category_parent;
//I want to load this template
$new_template = locate_template(array('category-program.php'));
//Program category have ID=43 so I check here if parent category = program
if (($parent_category) == 43) {
return $new_template;
}
}
return $template;
}
add_filter('template_include', 'wpse_template_check');
Но это не сработало ...
К сожалению, все еще не работает. Кстати, я изменил этот код: http://wordpress.stackexchange.com/questions/173607/how-to-show-wordpress-parent-and-child-category-different-page/180247?noredirect=1 # comment263244_180247 И там Роберт использует locate_template с массивом, и его код работает. Поэтому я не думаю, что есть проблема с этой строкой кода. – marcinf2
Это сработало! Большое спасибо Питеру! – marcinf2
Мое удовольствие. Наслаждаться. :-) –