br 8eb34


search

Умный поиск в Joomla 2.5

com25Одним из ярких дополнений в новой версии Joomla 2.5 является Умный поиск, компонент и модуль которого доступны по умолчанию после установки системы управления сайтом. В отличие от стандартного поиска, компонент Умного поиска имеет новый алгоритм обработки запросов. Подробнее о воможностях стандартного расширения, вы узнаете из статьи.

js25-search1

Преимущества Умного поиска

  • функция похожих по смыслу запросов
  • возможность включения расширенного поиска
  • обработка материалов по заданным критериям
  • формирование карты поиска

Недостатки Умного поиска

  • длительная индексация при большом количестве материалов
  • достаточно высокая нагрузка на ресурсы хостинга
  • не рекомендуется при ограниченных ресурсах сервера

Структура компонента

Умный поиск находится в Компонентах и состоит из вспомогательной панели иконок, полей навигации и 3 вкладок: Индекс контента | Карты контента | Фильтры поиска.

Индекс контента - здесь отображаются все материалы и категории, которые были проиндексированы. При желании проиндексированное содержимое можно отключать, нажимая на зеленую галочку. Для удаления всего проиндексированного контента на вспомагательной панели есть иконка Очистить.

Карты контента - все проиндексированное содержимое разбито на группы: автор, категории, язык, тип. В каждой из которых можно посмотреть подгруппы. Также статистическую информацию можно посмотреть во вспомогательной панели, нажав на иконку Статистика.

Фильтры поиска - здесь находятся фильтры, по которым можно выполнять поиск. Для создания нового фильтра нужно нажать на иконку Создать. При создания фильтра указывается его Заголовок и способ фильтрации, выбирая необходимый поиск. Справа указывается период и параметры фильтрации:

js25-search15

Настройка Умного поиска

nastroykiК опциям можно перейти нажав на иконку на вспомогательной панели. Настройки разделены на 3 вкладки:

Поиск

  • Описание в результатах - показывать или нет описание результатов поиска
  • Длина описания - ограничение длины описания по указанному количеству символов
  • Разрешить "пустой" поиск - включение возможности поиска по фильтру без искомого слова
  • Ссылки в результатах - показывать или нет связанные ссылки для элемента
  • Автоподсказки поиска - использовать или нет автоматичеческие подсказки
  • Расширенный поиск - включить/нет функцию расширенного поиска
  • Раскрывать расширенный поиск - возможность разворачивания расширенного поиска
  • Фильтры по дате - показывать или нет фильтрацию по датам начала/окончания публикации
  • Поле сортировки - выбрать из выпадающего списка способ сортировки результатов
  • Направление сортировки - сортировать поиск по убыванию/возрастанию
  • Подсвечивать текст в результатах - требуется или нет подсветка искомого текста

js25-search2

Индекс

  • Размер пакета при индексировании - выбрать количество одновременно обрабатываемых элементов (чем ниже - тем дольше, чем выше - тем больше нагрузка на сервер)
  • Ограничение табличной памяти - изменять не желательно
  • Мультипликатор веса заголовка / основного текста / мета-данных / адреса / текстов - соотношение влияние текста по отношение к другим мультипликаторам
  • Включить парадигматический модуль - для лингвистического анализа
  • Парадигматический модуль - выбрать только на англ. языке или снежок

Права

Управление настройками прав доступа для различных групп пользователей.

Работа с Умным поиском

js25-search3Для активации компонента, нужно произвести индексацию, для этого нажать иконку Индексировать. Чем больше материалов, тем дольше будет проходить их обработка.

После этого для корректной работы компонента нужно включить плагин "Содержимое - Умный Поиск" и плагины типа finder (для выбора типа используйте навигацию).

Затем с помощью модуля Умный поиск можно вывести поиск на сайте, обозначив его позицию. Кроме отображения в модуле, Умный поиск можно добавить в меню, для этого при создании нового пункта нужно выбрать соответствующий тип меню.

Примеры работы Умного Поиска:

  • js25-search4Если ввести в поле поиска фразу Война и Мир, будут показаны материалы, содержащие и слово "Война" и слово "Мир".
  • Если ввести Война не Мир - материалы, содержащие слово "Война", но не содержащие слово "Мир".
  • Если ввести Война или Мир - материалы, содержащие либо слово "Война", либо слово "Мир" (либо оба эти слова).
  • Если ввести "Война и Мир", будут показаны материалы, содержащие именно фразу "Война и Мир" целиком.

Комментарии  

#5 Алексей Гущин 27.10.2015 16:02
Если у вас Illegal collation - значит несовпадение кодировок поиска и кодировки поля в таблице БД.
administrator\c omponents\com_f inder\models\in dex.php
строка примерно 201 надо обернуть запрос в Convert('field' using urf8) используя свою кодировку
мой вариант с utf-8

$query->where( 'CONVERT ( ' . $db->quoteName( 'l.title') . ' USING utf8) LIKE "%' . $db->escape($se arch)
. '%"' . ' OR CONVERT ( ' . $db->quoteName( 'l.url') . ' USING utf8) LIKE "%' . $db->escape($se arch)
. '%"' . ' OR CONVERT ( ' . $db->quoteName( 'l.indexdate') . ' USING utf8) LIKE "%' . $db->escape($se arch) . '%"');

подробнее про конверт на сайте мускуля http://dev.mysql.com/doc/refman/5.7/en/charset-convert.html
#4 AleXandRE 30.04.2014 10:08
500 ошибка!!! Joomla!
500 - Обнаружена ошибка.
Illegal mix of collations for operation 'like' SQL=SELECT l.*,t.title AS t_title FROM `yoo_finder_lin ks` AS l INNER JOIN `yoo_finder_typ es` AS t ON t.id = l.type_id WHERE `l`.`title` LIKE "%крым%" OR `l`.`url` LIKE "%крым%" OR `l`.`indexdate` LIKE "%крым%" ORDER BY l.title asc Illegal mix of collations for operation 'like' SQL=SELECT l.*,t.title AS t_title FROM `yoo_finder_lin ks` AS l INNER JOIN `yoo_finder_typ es` AS t ON t.id = l.type_id WHERE `l`.`title` LIKE "%крым%" OR `l`.`url` LIKE "%крым%" OR `l`.`indexdate` LIKE "%крым%" ORDER BY l.title asc LIMIT 0, 100 Illegal mix of collations for operation 'like' SQL=SELECT l.*,t.title AS t_title FROM `yoo_finder_lin ks` AS l INNER JOIN `yoo_finder_typ es` AS t ON t.id = l.type_id WHERE `l`.`title`
-1 #3 Игорь 22.04.2013 16:29
У меня не получается настроить умный поиск, все перепробовал, все настройки.
Хотелось бы как вот здесь _http://allexpres.ru/?searchword=%D1%82%D0%B5%D0%BB%D0%B5&searchphrase=any&limit=20&ordering=popular&view=search&option=com_search_
Но пока что получается вот так
_http://filter-tver.com/search?q=%D0%B0%D0%BA%D0%B2%D0%B0%D1%84%D0%BE%D1%80&Itemid=0_
На первом сайте по firebug смотрю
div class="search"
там:
form id="searchForm" method="post" action="/Search.html"
dl class="search-results"
div class="pagination"
У меня же в
#2 Кирилл 09.10.2012 17:24
Кто может помочь доработать компонент? Необходимо всегда делать строгий запрос т.е автоматически добавлять в конче и в начале " и в компоненте com_content кроме спана с классом highlight обернуть его в ссылку с якорем #запрос и чтобы в результатах на станице прокручивалась к найденному первому . Или похожие компоненты посоветуйте
+2 #1 Даурен 04.09.2012 08:41
ватный модуль

Добавить комментарий

Защитный код
Обновить

Комментарии