diff --git a/wp-content/themes/cosmopet/modules/blog/components/most-read/component-controller.php b/wp-content/themes/cosmopet/modules/blog/components/most-read/component-controller.php index ce0af80..5b1e8fc 100644 --- a/wp-content/themes/cosmopet/modules/blog/components/most-read/component-controller.php +++ b/wp-content/themes/cosmopet/modules/blog/components/most-read/component-controller.php @@ -1,22 +1,43 @@ term_id)) { + $category_id = $current_category->term_id; + $category_name = $current_category->name; + } else { + $category_name = null; + } + + // Формируем аргументы для запроса $args = array( 'post_type' => 'post', 'posts_per_page' => 3, - 'orderby' => 'date', - 'order' => 'DESC' + 'meta_key' => 'post_views_count', // Предполагаемое мета-поле для просмотров + 'orderby' => 'meta_value_num', // Сортировка по числовому значению мета-поля + 'order' => 'DESC', ); - + + // Если выбрана категория, добавляем фильтр по ней + if ($category_id) { + $args['cat'] = $category_id; + } + + // Выполняем запрос $most_read_query = new WP_Query($args); $most_read = new Timber\PostQuery($most_read_query); - + + // Добавляем данные в контекст $context['most_read'] = $most_read; - - // Добавляем отладочную информацию + $context['current_category'] = $category_name; + $context['category_list'] = get_categories(); + + // Отладочная информация (опционально) global $wpdb; - $debug_info = $wpdb->get_results("SELECT post_id, meta_key, meta_value FROM {$wpdb->postmeta} WHERE meta_key LIKE '%view%' LIMIT 5"); + $debug_info = $wpdb->get_results("SELECT post_id, meta_key, meta_value FROM {$wpdb->postmeta} WHERE meta_key = 'post_views_count' LIMIT 5"); $context['debug_info'] = $debug_info; - + return $context; }); \ No newline at end of file