В Woocommerce я пытаюсь изменить порядок сортировки по умолчанию для "Новых" страниц архива категорий товаров, уменьшающихся по порядку даты, так что самые новые дополнения перечислены первыми.
Я пробовал 2 разных фрагмента кода. Оба изменяют порядок по умолчанию, но сначала показывают самые старые продукты.
Я изменил ASC на DESC в обоих фрагментах, и оба не изменили порядок сортировки.
Я ОЧЕНЬ новичок в кодировании и ценю любую помощь в том, где я ошибаюсь.
Первая попытка:
add_filter( 'woocommerce_default_catalog_orderby', 'custom_default_catalog_orderby' );
function custom_default_catalog_orderby() {
$product_category = array( 'new' );
if ( is_product_category( $product_category ) ) {
return 'date_desc';
}
}
Вторая попытка:
add_filter( 'woocommerce_get_catalog_ordering_args', 'custom_catalog_ordering_args', 20, 1 );
function custom_catalog_ordering_args( $args ) {
$product_category = 'new'; // <== HERE define your product category
// Only for defined product category archive page
if( ! is_product_category($product_category) ) return $args;
// Set default ordering to 'date ID', so "Newness"
$args['orderby'] = 'date ID';
if( $args['orderby'] == 'date ID' )
$args['order'] = 'DESC'; // Set order by DESC
return $args;
}
Любая помощь приветствуется.