Как в WordPress добавить фильтр в поиске?

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

Среди стандартных инструментов WordPress имеется необходимая система поиска, которую в принципе можно вывести в любой части сайта. Безусловно, это очень удобно, так как эта гибкость может быть использована при разработке любой темы. Но тут есть один момент. Стандартный поисковый механизм не позволяет как-либо фильтровать результаты поиска. Но было бы неплохо иметь такую возможность, особенно если на сайте много категорий или меток.

Как в WordPress добавить фильтр в поиске?

Одним из способов решения этой задачи является использование бесплатного WordPress-плагина Search & Filter.

Плагин Search & Filter

С помощью Search & Filter посетители Вашего сайта смогут выполнять поиск по категориям, тегам, пользовательской таксономии, типу записей, дате публикации или любой их комбинации, чтобы действительно улучшить поисковые запросы. Поля фильтра могут отображаться в виде выпадающего меню, флажков, переключателей или множественных выборок.

Во-первых, плагин нужно установить и активировать. После активации плагин добавит новый пункт меню Search & Filter в панель администратора WordPress. Нажав по нему, Вы перейдете на страницу использования плагина с подробной документацией о том, как его использовать.

Страница настроек плагина Search & Filter

Следует отметить, что плагин не добавляет поисковые фильтры на сайт в автоматическом режиме. Для этого он предлагает специальные шорткоды, которые принимают разные параметры для отображения параметров фильтрации. Вы можете использовать их любом месте сайте, включая виджеты, что обеспечивает гибкость в отображении и настройке.

Например, для отображения в окне поиска раскрывающегося списка категорий и тегов Вы можете использовать следующий шорткод:

[searchandfilter taxonomies="category,post_tag"]

Для вставки его в любое место WordPress-шаблона используют служебную команду do_shortcode(), которая отображает на странице содержимое шорткода. Она будет иметь вид:

<?php echo do_shortcode( '[searchandfilter taxonomies="category,post_tag"]' ); ?>

Если добавить этот код в файл search.php, то страница поиска будет выглядеть так:

Страница поиска

Рассмотрим другой пример, включающий включающий категории, теги, типы записей и дату.

[searchandfilter fields="search,category,post_tag,post_types,post_date"]

Страница поиска

Теперь вместо использования выпадающего поля выбора Вы также можете использовать флажки и добавлять метки для каждого поля. Для этого нужно добавить еще два параметра в наш шорткод.

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

Страница поиска

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

Давайте посмотрим другой пример. На этот раз мы добавим поля категорий, тегов и почтовых полей с разными заголовками и типами полей формы.

Страница поиска

Также эти шорткоды можно использовать в виджетах.

Курс WordPress-разработчик
Если Вам понравилась статья — поделитесь с друзьями
Михаил Петров