Делаем на сайте поиск от Яндекса

2811

Друзья! Пользуюсь возможностью и поздравляю Вас с наступающим Новым годом!

А сейчас опишу как сделать свой поиск от Яндекса.

1. этап. Регистрация на Яндексе и добавление поиска в сервисе

1. заходим вот на эту замечательную страничку: Поиск от яндекса
2. Заполоняем всё согласно инструкции. На шаге 3 результаты поиска выбираем: в iframe на странице, галочку открывать в новом окне не ставим(но лично мне удобно так это на ваше усмотрение). Адрес пишем такой: http://site.ru/search.php
3. Код для вставки на сайт. Оставляем вкладочку открытой.

2. этап. Создание файла для поиска

1. Заходим на сайт и берём index.php текущей версии. Копируем его и переименовываем в search.php
2. Начинаем вносить правки:
Находим вот такую строку
Код PHP:
  1. if ($inCore->checkMenuAccess()) $inCore->proceedBody();
и за комментируем её и получится вот так
Код PHP:
  1. //if ($inCore->checkMenuAccess()) $inCore->proceedBody();
3. После вставляем формы поиска и фрейм для результатов поиска.
Они у вас уже открыты в кладке. И вставляем так(скрипт вставлен куском так как он очень большой):
Код PHP:
  1.  
  2. $inPage->page_body = '{ \'suggest\': true, \'tld\': \'ru\', \'site_suggest\':callbacks\');</script>';
  3. $inPage->page_body .= '{\'tld\': \'ru\'yandex_site_callbacks\');</script>';
  4.  
Очень важно! каждый символ ' экранировать обратным слешем\ в итоге получается вот так: \'
Первая и последняя кавычка не экранируются.

Так же форму поиска можно вставить на любую страницу сайта
Делаем слепок системы | Загрузка аватара при регистрации
Комментарии (6)
SLOT 800 30 декабря 2012 в 01:14 +1
Не плохо, с Google ADsense тоже можно поиск добавить, что лучше Y или G ?
universe 30 декабря 2012 в 10:09 +1
что твой сайт лучше индексирует то и ставь
SLOT 800 31 декабря 2012 в 00:42 0
совершенно верно!))
Алексей 3 января 2013 в 17:15 0
хочешь чтобы в поиск попала самая свежая инфомация ставь гугл, яндекс выдаёт двухнедельную инфу
Димитриус 30 декабря 2012 в 21:23 +1
Если после авторизации пользователь переходит на страницу с поиском и показывает, что он снова не авторизован то добавьте вот эту строку
Код PHP:
  1. $inUser->update();
после
Код PHP:
  1. $inUser = cmsUser::getInstance();
Kreator 26 января 2013 в 00:03 0
Тут пример использования поиска на php^ http://xml.yandex.ru/examples.xml?id=420129

Использую такой на сайте. Очень нужно добавить защиту от ботов. Иначе 30000 разрешенных мне поисковых запросов и до утра не хватает. Может кто поможет поправить?

Тут в документации так все просто описано как использовать капчу в запросах: http://api.yandex.ru/xml/doc/dg/concepts/captcha.xml

Но сделать не могу. (