Как сделать такой поиск на wordpress?
Подскажите плагин поиска, где справа можно добавить в каких категориях искать?
вот что имею ввиду
Дополнительно:
Поместите следующий код в файл searchform.php вашей темы. (Внешний вид > Редактор > Форма поиска — searchform.php) Если в вашей теме нет файла searchform.php, вы можете создать его:
<form id="searchform" method="get" action="<?php bloginfo('url'); ?>"> <input type="text" name="s" id="s" size="15" /> <?php wp_dropdown_categories('show_option_none=Select category'); ?> <input type="submit" value="Search" /> </form> |
<form id="searchform" method="get" action="<?php bloginfo('url'); ?>"> <input type="text" name="s" id="s" size="15" /> <?php wp_dropdown_categories('show_option_none=Select category'); ?> <input type="submit" value="Search" /> </form>
Затем поместите этот код в конец файла functions.php. (Внешний вид > Редактор > Функции темы — functions.php):
add_action('pre_get_posts', 'search_by_cat'); function search_by_cat() { global $wp_query; if (is_search()) { $cat = intval($_GET['cat']); $cat = ($cat > 0) ? $cat : ''; $wp_query->query_vars['cat'] = $cat; } } |
add_action('pre_get_posts', 'search_by_cat'); function search_by_cat() { global $wp_query; if (is_search()) { $cat = intval($_GET['cat']); $cat = ($cat > 0) ? $cat : ''; $wp_query->query_vars['cat'] = $cat; } }
- Спаисбо!
Ответы:
Плагин Ajax Search Pro
Опишите проблему, и специалист поможет с настройкой, исправлением ошибки или доработкой сайта. Подберём понятный план работ без лишней переписки.
Пока нет других ответов. Будьте первым, кто поможет автору.
Ответить на вопрос

Если нужен «такой поиск» на WordPress, сначала определите, что именно он должен искать: записи, товары WooCommerce, кастомные поля, таксономии, SKU, авторов или всё сразу. Стандартный поиск WordPress ищет в заголовке и контенте, но не во всех произвольных полях.
Минимальная форма поиска:
<form role="search" method="get" action="<?php echo esc_url(home_url('/')); ?>"> <input type="search" name="s" value="<?php echo esc_attr(get_search_query()); ?>" placeholder="Поиск"> <button type="submit">Найти</button> </form>
Если поиск должен работать только по товарам:
<input type="hidden" name="post_type" value="product">
Для красивого live-search с подсказками лучше не писать всё с нуля, а использовать Relevanssi, SearchWP, Ajax Search Lite/Pro или ElasticPress для больших сайтов. Они умеют искать по полям, таксономиям и дают более релевантные результаты.
Если делать AJAX самостоятельно, серверный обработчик должен принимать строку, очищать её и возвращать ограниченное число результатов:
$query = new WP_Query([ 's' => sanitize_text_field($_GET['q'] ?? ''), 'post_type' => ['post', 'page'], 'posts_per_page' => 8, ]);
Не делайте поиск без лимита и без debounce на фронте. На большом сайте это быстро создаст нагрузку на базу.