Мне нужно применить разные варианты сортировки для разных категорий в Woo-commerce
, Например, Category-A
имеет сортировку по умолчанию Name
, Category-B
имеет сортировку по умолчанию Price Low to High
, а также Category-C
отсортировано по умолчанию Newness
,
ты можешь использовать woocommerce_default_catalog_orderby
фильтр, чтобы изменить значение порядка по умолчанию.
Чтобы проверить, какая категория отображается. ты можешь использовать is_product_category
функция.
Значение внутри is_product_category
должен быть вашей категорией, и, конечно, вы можете использовать несколько категорий для проверки одновременно, используя эту функцию следующим образом:
is_product_category( array( 'category-a', 'category-b' ) )
add_filter('woocommerce_default_catalog_orderby', 'custom_default_catalog_orderby');
function custom_default_catalog_orderby()
{
if (is_product_category('category-a')) {
return 'price'; //you can use either date or popularity or rating , price or price-desc
}
if (is_product_category('category-c')) {
return 'rating'; //you can use either date or popularity or rating , price or price-desc
}
if (is_product_category('category-c')) {
return 'title'; //you can use either date or popularity or rating , price or price-desc
}
}
приведенный выше код протестирован, вам просто нужно изменить слаг категории в зависимости от ваших потребностей и поместить код внутри вашего functions.php
Других решений пока нет …