Woocommerce сортировать по цене + продукты без цен в конце - PullRequest
1 голос
/ 15 апреля 2020

Я пытаюсь отсортировать цены в woocommerce, чтобы товары, у которых их нет, будут добавлены в конце сортировки.

Моя функция выглядит следующим образом:

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'] ) ? wc_clean( $_GET['orderby'] ) : apply_filters( 'woocommerce_default_catalog_orderby', get_option( 'woocommerce_default_catalog_orderby' ) );
    if ( 'sort-price' == $orderby_value ) {
        $args['orderby'] = 'CASE WHEN meta_value_num<1 THEN meta_value_num=99999 END ASC,meta_value_num';
        $args['order'] = 'ASC';
        $args['meta_key'] = '_price';

    }

После регенерации таблицы поиска продуктов с этой функцией сортировка выглядит следующим образом:

1Category[1€] 1Category[2€] 1Category[No price] 2Category[1€]

Почему продукты второй категории не сортируются должным образом?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...