Опция Woocommerce "Сортировать товары по количеству просмотров" работает некорректно - PullRequest
0 голосов
/ 15 апреля 2020

Я создал опцию сортировки Woocommerce, которая сортирует товары по представлениям. Я использовал коды с этого форума и Inte rnet для его создания. Теперь это выглядит следующим образом:

add_action( 'woocommerce_before_single_product', 'prefix_save_product_views' );
function prefix_save_product_views(  ) {

    $product_id = get_the_ID();
    $increment = 1;
    $current_visit_count = get_post_meta( $product_id, 'product_visit_count', true );

    $total_visit_count = (int)$current_visit_count + $increment;
    update_post_meta( $product_id, 'product_visit_count', $total_visit_count );

}


add_filter( 'woocommerce_catalog_orderby', 'misha_add_custom_sorting_options' );

function misha_add_custom_sorting_options( $options ){

    $options['popular'] = 'Beliebteste';

    return $options;

}

add_filter( 'woocommerce_get_catalog_ordering_args', 'misha_custom_product_sorting' );

function misha_custom_product_sorting( $args ) {

    // Nach Aufrufen sortieren
    if ( isset( $_GET['orderby'] ) && 'popular' === $_GET['orderby'] ) {
    $args['meta_key'] = 'product_visit_count';
    $args['orderby'] = 'meta_value_num';
    $args['order'] = 'desc';
        }
    return $args;
}

Проблема заключается в том, что при сортировке товаров по представлениям сейчас некоторые товары или целые строки товаров отображаются дважды. Когда я использую другие параметры сортировки (сортировка по самым новым, цена и т. Д. c ...), этого не происходит. Кто-нибудь может это исправить?

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