@graf45231

Как вывести товары в которых содержится искомое слово?

Поступила задача от SEO'шника сделать в админке возможность создать блок с товарами по поисковому запросу.

То есть он нажимает кнопку создать блок, вводить поисковый запрос и на странице появляется блок с набором товаров, соответствующих данному запросу.
Все а целом понятно кроме одного - как вывести товары по поисковому слову? Искать надо везде, начиная от названия, категории и меток, заканчивая описанием и произвольными полями.

Изучил набор шорткодов в вукомерс и ничего подходящего не нашел.
Сейчас на сайте для поиска используется плагин Search by Omega. Может можно через него создать блоки?
  • Вопрос задан
  • 39 просмотров
Решения вопроса 1
artzolin
@artzolin Куратор тега WordPress
php, WordPress разработка сайтов artzolin.ru
В wp_query() есть аргумент 's', в который можно передать поисковый запрос

$args = [
	'post_type' => 'product',
	's' => 'search phrase',
];

$query = new WP_Query( $args );


Поиск по умолчанию происходит по полям post_title, post_excerpt, post_content. Если нужно исправить это поведение, ищите, например, по запросам wp_query search by post meta, решения есть

Останется сделать из всего этого шорткод. К счастью в WooCommerce и так полно шорткодов вывода товаров, вы можете скопировать любой и отредактировать под вашу задачу
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы