При развитии блога, увеличивается число постов и страниц, это увеличивает посещаемость сайта, но усложняет поиск. Для поиска конкретных данных на блоге WordPress используют встроенный, стандартный поиск. Для его оптимизации есть много плагинов, именно о них пойдет речь в статье.
wp_stem_ru – Плагин отсекает окончание слов при поиске, чтобы найти большее количество вариантов. Для работы приложения, необходимо расширение mb_string, которое можно настроить на сервере хостера в php.
search-in-cat – Позволяет усовершенствовать поиск, за счет добавления checkbox и выбора категорий. Это разрешит в параметрах поиска указать конкретную категорию или рубрику для выполнения запроса. Ниже приведен код для выпадающего списка категорий в поиске:
<form method="get" id="searchform" action="<?php bloginfo('url'); ?>/">
<input type="text" value="<?php the_search_query(); ?>" name="s" id="s" />
<?php select_cats(); ?>
<input type="submit" id="searchsubmit" value="Искать" />
</form>
Поиск с checkbox в категории:
<form method="get" id="searchform" action="<?php bloginfo('url'); ?>/">
<input type="text" value="<?php the_search_query(); ?>" name="s" id="s" />
<?php if ($cat) : ?><input type=checkbox name="c" value="<?php echo $cat ?>"> только в этой категории<?php endif; ?>
<input type="submit" id="searchsubmit" value="Искать" />
</form>
Search Everything – Плагин разрешает производить поиск в цитатах, страницах, черновиках, комментариях и тд. Также возможно исключить некоторые категории, посты из поиска. Очень полезный плагин, он увеличит результат поиска на Вашем блоге. Установка плагина очень проста:
- Распакуйте и скопируйте приложение в папку plugins.
- Зайдите в админку, и там в настройках активируйте его.
10 комментария к статье
Мне кажется, встроенный движок уже плохо справляется с поиском. Да и зачем он, если есть Google? Там есть пользовательский поиск.
Есть такой отличный поисковый движек, SphinxSearch, плагин на его основе был написан в Percona, и на их проекте mysqlperformanceblog.com можно посмотреть как он работает, просто воспользовавшись поиском в блоге.
Это самый быстрый и удобный поиск на сегодняшний день в wordpress. На данный момент, плагин пока не опубликован, но скоро будет доступен для всех желающих.
Что такое SphinxSearch можно узнать на http://sphinxsearch.com/.
а как сделать, чтобы при поиске, если поле поиска оставить пустым, а категорию выбрать, то будут выводится все посты с этой категории?
Народ помогите пожалуйста почему то стандартный поиск не работает вот такую ошибку выдает, не знаю что делать!
Fatal error: Call to undefined function mb_internal_encoding() in Z:\home\localhost\www\myblog\wp-content\plugins\wp_stem_ru.php on line 50
Здравствуйте! Установил блог все настроил, все ссылочки работают нормально, но почему-то при переходе в раздел рубрики, выдается вот что:
============================================
“Извините, ничего не нашлось. Воспользуйтесь навигацией или поиском, чтобы найти необходимую вам информацию. Try something else.
============================================
В чем может быть проблема? Помогите пожалуйста советом если сможете?! Заранее благодарен Вам!
В инете почитал что система поиска в Wordpress дает нагрузку на сервер. Дело в том что мой хостер четко говорит что нагрузка идет именно от моего блога на движке Wordpress. Уж как хостер выяснил это я не знаю но если бы не говорили в интернете об этом. На своем хосте убрал блог временно и нагрузка ушла. Проверил архив с сайтом на вирусы все ок. Потом установил новую версию и импортировал базу и тоже самое. Что делать как снизить нагрузку? Убираю именно модуль поиска и блог не нагружает сервер. Что это может быть? Прошу вас ответьте мне на почту если сможете. Заранее спасибо!
В ходе тестов мною тоже была выявлена нагрузка. Может как-то не правильно сделан сам исходник? Ладно, если на сайте не шибко много информации и сайт не так часто обновляется тогда можно обойтись просто картой сайта.
Но что касается мощных и постоянно наполняющихся и обновляющихся блогов, то тут уж точно без системы поиска не обойтись, ведь зашедший пользователь попросту может развернуться и уйди.
А что касается комментария пользователя (Сергей) то в вашем случае нужно перезаписать страницы или поискать и установить плагин RusToLat который способен переводить русский язык.
Вся загвоздка вашей ситуации в том, что запись в вашем блоге была сделана на русском языке, стало быть, и ссылки сделаны русскими, следовательно, когда вы обновили плагины ваш блог принял англоязычные ссылки вот он и выдает ошибки.
Попробуйте ввести ссылку на рубрику или пост русскими буквами и ваша страница откроется без проблем. Вариант еще один попробуйте создать еще одну страницу и посмотрите, скорее всего, если у вас установлен плагин RusToLat ваша проблема исчезнет. На моем блоге была подобная ситуация.
А есть какой-нибудь нормальный плагин, чтобы поиск выводил по релевантности…а не по датам?
Не совсем понятно, что делать с этими wp_stem_ru и mb_string? Как их настраивать? Хотя это очень важные моменты, что бы поиск совершался не только по заданному слову, но и по его производным