phpMyAdmin по-русски
   О проекте  |  Скачать  |  Документация  |  Форум
  
    Свежие статьи:
    Обсуждения на форуме:
    Отдел подписки:
Главная страница / Документация /

Скрипт поиска по сайту на основе Яндекс.XML



Яндекс.XMLСкачать скрипт поиска по сайту на основе Яндекс.XML (28.11.2010):
Версия 0.6 (windows-1251)
Версия 0.6 (utf-8)

Назначение:

Организация на сайте поиска основанного на функциональных возможностях предоставляемых сервисом Яндекс.XML.

Пример реализации поиска по сайту, организованного на базе данного скрипта.


Возможности:

  1. На официальной странице реализации XML-поиска приведен рабочий пример PHP-скрипта. Главной отличительной особенностью нашего варианта является использование асинхронных запросов - XMLHttpRequest - иначе известных, как технология Ajax. То есть, при выполнении поиска и выводе данных не производится перезагрузка страницы. Ответ полученный от Яндекс.XML подгружается в фоне и моментально выводится, что позволяет сделать поиск максимально быстрым и удобным пользователю.
  2. Существует возможность добавления поля поиска на любую страницу сайта. При вводе запроса в таком поле производится перевод на основную страницу поиска и вывод искомых результатов. Таким образом можно создать, так называемое, сквозное поле поиска на всех страницах вашего сайта.
  3. Поиск по сайту реализованный на базе Яндекс.XML, работает по всем страницам находящимся в индексе Яндекса.

Требования:

Для добавления на ваш сайт данного скрипта необходимо соблюсти условия оговоренные в лицензии бесплатного сервиса Яндекс.XML. Ниже перечислены основные пункты:
  1. Сервер должен иметь выделенный IP, который необходимо зарегистрировать на странице Яндекс.XML. При необходимости, свяжитесь с хостером, услуга получения выделенного IP, может быть платной. Впрочем, как правило, плата очень небольшая.
  2. Ограничение на максимальное число запросов с сайта в сутки - не более 1000. Этого числа, в большинстве случаев, более чем достаточно. Для сайтов подключенных к Рекламной Сети Яндекса ограничение по количеству запросов не применяется, но необходимо установить код статистики указанный в 7 параграфе лицензии сервиса Яндекс.XML.
  3. На странице отображения результатов поиска должна стоять ссылка на Яндекс.XML.
Если вышеназванные условия не вызвали у вас проблем, можно переходить к установке, настройке и проверке скрипта.


Установка:

Установка заключается в разархивировании и загрузке файлов в каталог search на вашем сайте. Для настройки скрипта следует открыть текстовым редактором файл config.php и внести в него следующие изменения:
  1. Впишите в переменную $aLocal["ip"] ваш выделенный IP сервера, который был зарегистрирован на Яндекс.XML.
    Пример:
    $aLocal["ip"] = "*.*.*.*";
  2. Впишите в переменную $aLocal["url"] ваш адрес для совершения запроса, который можно найти на странице настроек.
    Пример:
    $aLocal["url"] = "http://xmlsearch.yandex.ru/xmlsearch?user=name&key=********";
  3. Впишите в переменную $aLocal["host"] домен или поддомен вашего сайта.
    Пример для домена:
    $aLocal["host"] = "php-myadmin.ru";
    Пример для поддомена:
    $aLocal["host"] = "forum.php-myadmin.ru";
  4. Для проверки наличия в PHP обязательных расширений, а также корректности конфигурационных директив, запустите скрипт (search/test.php).
Если при запуске search/test.php вы не видите никаких ошибок, а только поле поиска, попробуйте воспользоваться им и поискать что-нибудь на сайте.

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


Добавление на сайт:

  1. Для добавления формы поиска на страницу вашего сайта воспользуйтесь примером в файле (search/index.php).
    1. Обратите внимание на php код, который отвечает за передачу запросов с других страниц сайта:
      <?php
      $sSearch_text = (isset($_REQUEST["find"]) && strlen($_REQUEST["find"]) > 2)
      ? htmlspecialchars($_REQUEST["find"]) : "";
      ?>
    2. Обязательными являются строки подключения файла каскадых стилей (search/search.css) и JavaScript (search/search.js).
      <link href="search.css" rel="stylesheet" type="text/css" />
      <script type="text/javascript" src="search.js"></script>
    3. И наконец, блок HTML кода внутри комментариев: "Поиск. Начало." и "Поиск. Конец."
  2. Для добавления поля поиска на любых других страницах вашего сайта, воспользуйтесь примером формы из файла (search/test.php). Здесь обязательным является только HTML код внутри комментариев "Вставка поля поиска. Начало." и "Вставка поля поиска. Конец."
  3. Оформление цвета, размера шрифта и т. д. осуществляется редактированием стилей в файле (search/search.css). Смотрите комментарии в нем.
После завершения всех подготовительных работ, удалите файлы search/test.php и search/readme.txt.

- Обсуждение скрипта на форуме