@freeman0204

Как сделать 2 разных поиска на Wordpress?

Вот код для изменения формы:

add_filter( 'get_search_form', 'my_search_form' );
function my_search_form( $form ) {

	$form = '
	<form role="search" method="get" id="searchform" action="' . home_url( '/' ) . '" >
		<label class="screen-reader-text" for="s">Запрос для поиска:</label>
		<input type="text" value="' . get_search_query() . '" name="s" id="s" />
		<input type="submit" id="searchsubmit" value="Найти" />
	</form>';

	return $form;
}


Вот фильтр поиска
<input type="hidden" value="post" name="post_type" />
Есть на сайте форма что ищет по стандарту, а есть та что ищет только по кастомному посту. Формы на сайте уже есть отдельно. Как сделать так что бы в одну форму строка
<input type="hidden" value="post" name="post_type" />
добавилась, а в другую нет. Сделал второй хук, не помогло.
Это тоже не помогло https://wordpress.stackexchange.com/questions/8988...
Также нужно сделать вывод поиска с двумя разными шаблонами. Проверка get_post_type сработала только в шаблоне архива, в поиске не сработала.
  • Вопрос задан
  • 477 просмотров
Пригласить эксперта
Ответы на вопрос 1
ya-vitaliy
@ya-vitaliy
Верстаю... + wordpress и пробую Laravel
Не нужно модифицировать форму через фильтр, просто физически добавьте эти формы (одну со скрытым полем другую без). А на стороне сервера проверяйте пришло ли вам скрытое поле если да, то выполняете wp_query исходя из этих данных. Так же само из шаблонами, все выполняете исходя из условия наличия скрытого поля, если да то подключаете один шаблон результатов поиска, если нет, то другой (дефолтный).
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Похожие вопросы