Flector

SearchAutocomplete

SearchAutocomplete

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

Скачиваем плагин по ссылке в конце страницы и устанавливаем его:

1 Распаковываем архив.

2 Копируем папку search-autocomplete в /wp-content/plugins/.

3 Заходим в админку блога на вкладку "Плагины" и активируем плагин.

Настройка плагина находится в "Параметрах\Search Autocomplete". Плагин не переведен на русский язык, но настроек в нем немного и я их сейчас вам все объясню. Самое первое и самое главное это Search Field Selector:

Search Field Selector

В этой опции надо указать css-селектор для текстового поля поиска. Из подсказки понятно, что для шаблонов TwentyTwelve, TwentyEleven и TwentyTen таким селектором будет "#s". Для шаблона TwentyThirteen автор указал несколько некорректный пример (видимо, для ранних версий шаблона), правильным указанием селектора будет ".search-field". Собственно, во многих шаблонах используется стандартное обозначение селектора для поискового поля в виде "#s", но в некоторых шаблонах имя селектора может быть изменено. Если сами не знаете, как узнать селектор поискового поля, то спрашивайте в комментариях – обязательно помогу.

Следующие настройки это:

Настройки SearchAutocomplete

Тут уже все просто. Autocomplete Trigger это количество символов в текстовом поле, при котором плагин начнет выводить всплывающие результаты поиска. Идеальным вариантом будет 2-3 символа. Number of Results это количество выводимых результатов. Hotlink Items указывает плагину открывать сразу искомую страницу (рубрику, метку и т.д.) или ввести найденный результат в поисковое поле. Честно говоря, опция дурацкая – зачем нужны всплывающие результаты поиска, если они сразу не ведут на указанную страницу? Поэтому ставьте галку на "Link to post or page", тут и раздумывать не надо.

Следующие настройки тоже просты:

Настройки SearchAutocomplete 2

Здесь вы выбираете по каким типам записей и таксономий производить поиск. Если к записям добавить страницы еще имеет смысл, то выбирать таксономии в большинстве случаев не стоит – только результаты поиска станут хуже.

Последняя настройка плагина это выбор шаблона, сразу привожу скриншоты встроенных в плагин шаблонов:

Встроенные в SearchAutocomplete шаблоны

Встроенных шаблонов всего три, но плагин использует шаблоны от jQuery UI ThemeRoller - собственно, тут выбор очень большой и что-нибудь обязательно подойдет к шаблону вашего сайта.

На этом все, настроек больше нет. Вряд ли вы потратите на настройку плагина больше пары минут. Единственной сложностью может оказаться определение css-селектора поля для поиска, но повторюсь – пишите, обязательно отвечу.

Плагин использует стандартный поиск движка WordPress. А что делать, если для поиска на сайте установлен плагин Relevanssi? Придется внести некоторые изменения в код плагина SearchAutocomplete, чтобы он стал выдавать результаты не стандартного поиска, а продвинутого поиска от Relevanssi. Для этого откройте файл плагина searchautocomplete.php и найдите строчки:

105
106
107
108
109
$tempPosts = get_posts( array(
    's'           => $term,
    'numberposts' => $this->options['autocomplete_numrows'],
    'post_type'   => $this->options['autocomplete_posttypes'],
) );

И замените их на:

105
106
107
108
109
110
111
112
113
114
115
116
117
if (function_exists("relevanssi_do_query") ) {
    $query->query_vars['s'] = $term;
    $query->query_vars['posts_per_page'] = $this->options['autocomplete_numrows'];
    $query->query_vars['post_type'] = $this->options['autocomplete_posttypes'];
    relevanssi_do_query($query);
    $tempPosts = $query->posts; }
else {
    $tempPosts = get_posts( array(
    's'           => $term,
    'numberposts' => $this->options['autocomplete_numrows'],
    'post_type'   => $this->options['autocomplete_posttypes'],
) );
}

После этого изменения кода плагин начнет выдавать не стандартные результаты поиска, а результаты, полученные от плагина Relevanssi. Причем, при отключении плагина Relevanssi ничего плохого не случится - просто SearchAutocomplete начнет опять использовать стандартный встроенный поиск. Этот мой небольшой хак автор плагина обещал встроить в одной из следующих версий плагина, но когда он это сделает неизвестно.

Информация о плагине в репозитории wordpress.org не найдена. Или wordpress.org в данный момент недоступен или плагин был временно удален из репозитория (например, из-за найденной критической ошибки в плагине). Попробуйте найти плагин в репозитории вручную.

Понравился пост? Подпишись на обновления по Обновления блога по RSSRSS или Обновления блога на TwitterTwitter !

Комментарии (всего 26 комментариев)
Написать комментарий

(обязательно)

(обязательно, не публикуется)

Для вставки кода используйте кнопку "Код", по умолчанию используется синтаксис подсветки языка "php", вы можете поменять его на любой другой поддерживаемый GeSHi язык, например "javascript", "css", "html4strict", "sql" и тд. Используйте предпросмотр!
 


Подписаться на уведомления без комментирования.