Как и в случае с this question, вам необходимо фильтровать template_include
. Вам необходимо вызвать свой собственный шаблон архива archive-list-view.php
и сохранить его в папке woocommerce
вашей темы. Очевидно, вы можете называть его чем угодно, вам просто нужно настроить код ниже, чтобы он соответствовал.
структура папок:
/theme-folder/functions.php
/theme-folder/woocommerce/archive-list-view.php
На template_include
фильтре мы будем проверять, если мы на долговременном архиве для категории nussmylch
продукции. Если это так, мы будем искать и поставлять новый шаблон. В противном случае используется стандартный шаблон.
EDIT: неправильная функция WooCommerce is_product_taxonomy()
. is_product_category()
необходим для проверки определенной категории.
add_filter('template_include', 'so_33615903_custom_category_template', 20);
function so_33615903_custom_category_template($template) {
// check you are on the taxonomy archive for specific category
if (is_product_category('nussmylch') ) {
$new_template = locate_template(array('woocommerce/archive-list-view.php'));
if ('' != $new_template) {
$template = $new_template ;
}
}
return $template;
}
Working Example
Не с ума отличается от http://stackoverflow.com/a/33622302/383847. только немного отличающаяся условная логика. Если вы хотите установить стиль отображения в администраторе, вам нужно будет добавить термин meta. У WooCommerce есть функции для этого, и он входит в ядро WordPress в 4.4. – helgatheviking
@helgatheviking Спасибо за ответ. Этот код работает не для меня, но будет здорово. У меня есть категория с именем Nussmylch и только для просмотра списка для этой категории. – Robin
всегда помогает точно определить, что не работает. Это помогает другим приблизиться к вещам быстрее, чем общий (и очень страшный) «он не работает» :) Я сделал еще одну попытку, см. Мой ответ ниже. – helgatheviking