Я использую плагин, который уже считает количество продуктов и хранит его в таблице с именем mwb_wpr_data.
Запрос для просмотра списка продуктов:
SELECT DISTINCT('productid') FROM 'mwb_wpr_data' WHERE 'action' = 'view'
Поле productid - это продукты FK to Woocomerce.
Как изменить сортировку по умолчанию в Woocommerce, чтобы она отображала товары по порядку большинства представлений в таблице 'mwb_wpr_data'?
Текущий код с помощью плагина Счетчик просмотров:
add_action( 'pre_get_posts', 'my_view_filter' );
function my_view_filter($query){
if (
$query->is_main_query() &&
( $query->is_home() || $query->is_archive() || $query->is_search() )
) {
$query->set('suppress_filters', 'false');
$query->set('orderby', 'post_views');
$query->set('order', 'DESC');
}
}