Я создал рабочую опцию сортировки по woocommerce, которая сортирует по просмотрам. Проблема в том, что он учитывает только просмотры, ведущие на страницу одного продукта. И люди попадают на страницу продукта только тогда, когда они нажимают на название продукта. Когда они нажимают на изображение или добавляют в корзину, они перенаправляются на другую страницу. Как я могу добавить внешние ссылки на эту опцию сортировки? Вот мой код:
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 meta_value';
$args['order'] = 'desc';
}
return $args;
}