Woocommerce - отображать (сортировать) избранные товары первыми, находясь в категории - PullRequest
0 голосов
/ 31 октября 2019

Я пытаюсь отобразить избранные товары первыми в категории. Это то, что у меня есть сейчас:

/**
 * Featured products first
 */
add_filter( 'woocommerce_get_catalog_ordering_args', 'featured_woocommerce_get_catalog_ordering_args' );
function featured_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 ( 'featured_list' == $orderby_value ) {
        $args['tax_query'] = array(
            'taxonomy' => 'product_visibility',
            'field'    => 'name',
            'terms'    => 'featured',
            'operator' => 'IN', 
        );
    }
    return $args;
}
add_filter( 'woocommerce_default_catalog_orderby_options', 'featured_woocommerce_catalog_orderby' );
add_filter( 'woocommerce_catalog_orderby', 'featured_woocommerce_catalog_orderby' );
function custom_woocommerce_catalog_orderby( $sortby ) {
    $sortby['featured_list'] = 'Featured first';
    return $sortby;
}

Этот код изменяет цикл категории, но он отображает только 6 товаров из 55, и отображаемые товары никоим образом не представлены. Я не понимаю, что может быть не так, и мне нужно руководство.

1 Ответ

0 голосов
/ 01 ноября 2019

Вы можете использовать следующие плагины, он делает именно то, что вы хотите - WC Featured Products

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