Как интегрировать свою поисковую форму и поиск Яндекса

Недавно я разработал веб приложение, которое показывает точное время и долготу дня в 13 тысячах городах по всему миру. Естественно, это достаточно объемное приложение размером 26 тысяч страниц.

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

У меня был выбор создать “живой” поиск либо интегрировать поиск от Яндекса. Я выбрал второй вариант, так как пользователь может точно не знать как пишется город, ну и выдача гораздо интереснее у Яндекса.

В дефолтной версии Яндекс предоставляет достаточно лаконичную и не стилизованную поисковую форму. Я же хотел вместо нее использовать свою. Вот такую.

Для того, чтобы получать запрос пользователя через форму и вставлять его в стандартный url выдачи Яндекса потребуется:

  1. Обернуть поисковую форму в тег
    с указанием метода передачи данных POST, а также в параметре action указать ссылку на обработчик PHP.

2. Написать в обработчике PHP (в данном случае файл search_result.php) небольшой скрипт, который принимает запрос пользователя (ключевую фразу) в массиве $_POST, обрабатывает его и вставляет в параметр URL выдачи Яндекса. Далее, функция header перенаправляет нас на вновь сформированный URL. Не забудьте предварительно создать страницу с результатами выдачи Яндекса. Подробнее о том, как интегрировать поиск Яндекса здесь

ob_start();
$search = htmlspecialchars($_POST['search']);
$searchsimbol = array("`", "'", " ", "  ", "«", "»", "(", ")");
$zamenasimbol = array("+", "+", "+", "+", "+", "+", "+", "+");
$zapros = str_replace(  $searchsimbol,  $zamenasimbol,  $search  );
$new_url = "https://timeandsunrise.ru/search.php?searchid=2356347&text=".$zapros."&web=0#";
header('Location: '.$new_url);
ob_end_flush();

В результате мы получаем на входе.

А на выходе.

Не обращайте внимания на качество выдачи, сайт только начал индексироваться.

Частые вопросы

Можно ли считать рейтинг на Lucky SEO рекламой?

Нет, это справочная подборка. Партнёрские ссылки, если они есть, не заменяют проверку оферты, лицензий и отзывов на стороне сервиса.

Чем страница «Как интегрировать свою поисковую форму и поиск Яндекса» отличается от главной Lucky SEO?

Это отдельная карточка или рубрика, а не дубль главной. Канонический адрес — текущий URL без www и с https.

Стоит ли покупать «Как интегрировать свою поисковую форму и поиск Яндекса» только по этому тексту?

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

Где смотреть источники и контакты редакции Lucky SEO?

Автор указан в карточке страницы. Служебные разделы — «О проекте», «Контакты» и политика конфиденциальности — в подвале сайта.