Сортировка товаров по имени в WooCommerce

По-умолчанию, в WooCommerce доступны лишь несколько вариантов сортировки товаров в каталоге магазина. Это сортировка по-умолчанию, по популярности, по рейтингу, по цене (от дешевых к дорогим и от дорогих к дешевым). Предлагаемый нами сниппет добавит еще один способ сортировки товаров — По имени. Название сортировки можно изменить в строке

$sortby['name_list'] = 'Сортировать по имени';

Как обычно, добавляем следующий код в файл functions.php вашей темы или в плагин для сайта WordPress:

add_filter( 'woocommerce_get_catalog_ordering_args', 'custom_woocommerce_get_catalog_ordering_args' );

function custom_woocommerce_get_catalog_ordering_args( $args ) {
$orderby_value = isset( $_GET['orderby'] ) ? woocommerce_clean( $_GET['orderby'] ) : apply_filters( 'woocommerce_default_catalog_orderby', get_option( 'woocommerce_default_catalog_orderby' ) );

if ( 'name_list' == $orderby_value ) {
$args['orderby'] = 'name';
$args['order'] = 'ASC';
$args['meta_key'] = '';
}

return $args;
}

add_filter( 'woocommerce_default_catalog_orderby_options', 'custom_woocommerce_catalog_orderby' );
add_filter( 'woocommerce_catalog_orderby', 'custom_woocommerce_catalog_orderby' );

function custom_woocommerce_catalog_orderby( $sortby ) {
$sortby['name_list'] = 'Сортировать по имени';
return $sortby;
} 

По всем вопросам и отзывам просьба писать в комментарии ниже.

Не забывайте, по возможности, оценивать понравившиеся записи количеством звездочек на ваше усмотрение.

VN:F [1.9.22_1171]
Rating: 4.2/5 (5 votes cast)

Об авторе ADv

Занимаюсь разработкой сайтов и магазинов на WordPress. Оказываю платные помощь и консультации. Skype: advokat_b
  • Define

    Здравствуйте! скажите пожалуйста, а как исправить, если некорректно отображается сортировка «по убыванию и возрастанию»? отображает наоборот…..

  • Николай

    Здравствуйте, подскажите пожалуйста, как мне настроить фильтр поиска на каждой из страниц товаров. По умолчанию фильтром можно пользоваться только на одной странице — Магазин

    • ADv

      Добавить виджет фильтра в соответствующий сайдбар?
      Вообще, не особо понятно, что должен будет сортировать фильтр на странице товара, ведь там нет ОСТАЛЬНЫХ товаров..

  • Paul Novikov

    Всем привет! Подскажите, как перевести слова сортировки woocommerce на русский язык?

  • Максим Худенко

    добавил данный код в functions.php, сортировка добавилась, но сортирует не правильно, примерно так: К, А, Я, Б…

Scroll To Top