Intereting Posts
Оптимизация скорости сайта путем локализации путей Как настроить тип персонализированного сообщения для просмотра будущих сообщений Текущий крюк класса в сгенерированном списке Как очистить debug.log, когда размер файла превышает xyMB? Могу ли я добавлять настраиваемые атрибуты при добавлении встроенных скриптов? Как переписать URL-адрес на другой переписанный URL-адрес без изменения адреса? Как изменить положение меню администратора «Медиа»? Запретить обновление WordPress от переопределения пользовательских языковых переводов? Фильтр Выбор результатов на основе выбора Добавление фильтра таксономии в список администратора для пользовательского типа сообщений? Редакции сообщений не сохраняются или отображаются только для пользовательских типов сообщений Как разрешить пользователям войти в WP из внешнего домена и сделать запросы REST Ключ активации темы WordPress? возникли проблемы с моим плагином сообщений в категории категорий Получать обновленные результаты запроса на странице после вставки в базу данных

Измените WordPress SQL Query, чтобы извлечь из категории

Я использую плагин wordpress, называемый «kf most read», который хранит количество попыток чтения прочитанного сообщения и позволяет выводить список большинства прочитанных сообщений.

Это хорошо работает. Проблема в том, что я пытаюсь вытащить наиболее прочитанные сообщения, но только самые прочитанные сообщения в текущей категории, которые вы просматриваете.

Я близок к невежественному, когда дело доходит до sql.

Здесь мы, что плагин в настоящее время использует, чтобы вытащить наиболее прочитанные сообщения:

$sql = "SELECT count(mr.post_ID) AS totHits, p.ID, p.post_title FROM $wpdb->posts p JOIN {$wpdb->prefix}kf_most_read mr ON mr.post_ID = p.ID WHERE mr.hit_ts >= '".(time() - ( 86400 * $period))."' GROUP BY mr.post_ID ORDER BY totHits DESC, ID ASC LIMIT $limit"; 

Как я могу включить следующий запрос, который тянет из определенной категории в вышеперечисленное?

 $sql .= "LEFT JOIN $wpdb->term_taxonomy ON($wpdb->term_relationships.term_taxonomy_id = $wpdb->term_taxonomy.term_taxonomy_id)"; $sql .= "WHERE $wpdb->term_taxonomy.term_id IN ($currentcat)"; $sql .= "AND $wpdb->term_taxonomy.taxonomy = 'category'" ; 

Любая помощь по этому поводу будет высоко оценена.

Solutions Collecting From Web of "Измените WordPress SQL Query, чтобы извлечь из категории"

Вы должны убедиться, что переменная $ currentcat установлена ​​до запуска этого запроса. Это должен быть идентификатор категории, из которой вы хотите вывести верхние сообщения.

 $sql = "SELECT count(mr.post_ID) AS totHits, p.ID, p.post_title FROM $wpdb->posts p JOIN {$wpdb->prefix}kf_most_read mr ON mr.post_ID = p.ID JOIN {$wpdb->prefix}term_taxonomy ON ($wpdb->term_relationships.term_taxonomy_id = $wpdb->term_taxonomy.term_taxonomy_id) WHERE mr.hit_ts >= '".(time() - ( 86400 * $period))."' AND $wpdb->term_taxonomy.taxonomy = 'category' AND $wpdb->term_taxonomy.term_id IN ($currentcat) GROUP BY mr.post_ID ORDER BY totHits DESC, ID ASC LIMIT $limit";