WordPress Фильтровать сообщение по product_cat

У меня проблемы с фильтрацией сообщений (продукт) по категории продукта. Пробовал несколько способов, я новичок.

В моем шаблоне архива продукта я пришел, чтобы выполнить отчет (через плагин SQLREPORTS) с этим запросом:

SELECT `post_title` AS Alumno, `comment_author` AS 'Profesor',  `comment_date`  AS 'Fecha', `comment_content` AS 'Nota'
FROM `xi00_3_comments`
INNER JOIN `xi00_3_posts` ON `comment_post_ID`=`ID`
WHERE `comment_author` != 'WooCommerce'
AND DATE(comment_date) BETWEEN DATE_ADD(DATE_ADD(NOW(),INTERVAL -1 MONTH), INTERVAL 0 DAY) AND DATE(NOW())
AND comment_approved = '1'
ORDER BY `xi00_3_comments`.`comment_date` DESC

Он работает очень хорошо, и я получаю все комментарии от всех сообщений. (моя страница уже отфильтрована по категориям товаров).

Мне удалось получить значение для текущей категории: (скажем, значение «3b»)

   [query_vars] => Array
(
[product_cat] => 3b

$category =  get_query_var('product_cat','msg if not set');

Можете ли вы помочь с тем, как мне структурировать мой запрос, чтобы включить таксономию и ограничить количество публикаций в данной категории продуктов?
Я знаю, что мне нужно включить таксономию и термины, но не могу понять.

Огромное спасибо.

1

Решение

Вам нужно сделать 2 изменения:

  1. Inner Присоединяйтесь к столу сообщений (xi00_3_posts) к таблице комментариев (xi00_3_comments).
  2. Inner Присоединяйтесь к столу сообщений (xi00_3_posts) назвать таблицу отношений (xi00_3_term_relationships), для выбора категории.

Заметка я использовал 10 как term_taxonomy_id в примере ниже:

SELECT `post_title` AS Alumno, `comment_author` AS 'Profesor',  `comment_date`  AS 'Fecha', `comment_content` AS 'Nota'  FROM `xi00_3_posts`  INNER JOIN `xi00_3_comments` ON `ID`=`comment_post_ID` INNER JOIN `xi00_3_term_relationships` ON (`ID` = `object_id`)  WHERE `comment_author` != 'WooCommerce'  AND ( `term_taxonomy_id` IN (10) )  AND DATE(comment_date) BETWEEN DATE_ADD(DATE_ADD(NOW(),INTERVAL -1 MONTH), INTERVAL 0 DAY) AND DATE(NOW()) AND comment_approved = '1' ORDER BY `xi00_3_comments`.`comment_date` DESC
1

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector