@Alapaska
Coder

Как поменять приоритет показывания "похожих товаров" в Woocommerce?

Функция ниже выводит на стр товара в секции "Вам также может понравится" товары под тем же брендом, однако надо доработать код так, чтобы он сначала показывал товары из того же бренда, потом из тех же категорий, а потом остальные товары. Как дополнить код ниже, чтобы он работал таким образом?

function filter_related_products($args){    



    global $product;

    $old_arguments = $args;

    $args = [];

    $id = $product->id;

    $categories = wc_get_product_terms( $product->id, 'product_cat', array( 'fields' => 'slugs' ) );

    $brands = wc_get_product_terms( $product->id, 'pa_brandi', array( 'fields' => 'slugs' ) );

    

    

    

    $ids_by_model_attribute = get_posts( array(

        'post_type' => 'product',

        'numberposts' => -1,

        'post_status' => 'publish',

        'fields' => 'ids',

        'exclude' => array( $id ),

        'tax_query' => array(

            array(

                'taxonomy' => 'pa_brandi',

                'field'    => 'slug',

                'terms'    => $brands,

                'operator' => 'IN'

            )

        )

    ) );

    

    if($ids_by_model_attribute){

        foreach($ids_by_model_attribute as $product_id){

            array_push($args,$product_id);

        }

    }

    

    

    if(count($ids_by_model_attribute) < 20){

        $args = array_merge($args, $old_arguments);

    }

    

    

    

    return $args;

}



add_filter('woocommerce_related_products','filter_related_products');
  • Вопрос задан
  • 45 просмотров
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы