Я создал опцию сортировки 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 ...), этого не происходит. Кто-нибудь может это исправить?