- 17
Информация о файле
Больше 10 тысяч загрузок модулей от sv2109!
Что делает этот модуль?
Это модуль поиска для магазинов, которым нужен качественный и быстрый поиск. То есть практически для всех магазинов, ведь с плохим поиском магазины постоянно теряют десятки процентов прибыли! Ваши клиенты не будут вручную просматривать десятки тысяч страниц вашего сайта для поиска нужного товара. Если товар не найден в первые секунды через поиск то пользователь просто уходит с вашего сайта.
Модуль тестировался на магазине в котором больше миллиона товаров!
Основные преимущества
- больше 1000 продаж модуля
- очень большая скорость поиска
- использование морфологии и релевантности для более точного поиска
- уменьшение процента отказов покупателей
- логика поиска для поиска по фразам из нескольких слов: И, ИЛИ
- неточный поиск, поиск с опечатками
- поиск без учета языка
-
синонимы
Дополнительные возможности
- режим исправления раскладки клавиатуры ("фззду" -> "apple")
- режим транслитерации ("stol" -> "стол")
- возможность добавлять новые поля для поиска, например можно добавить поиска по id товара, мета H1 и почти по любому полю товара.
- гибкий поиск по атрибутам
- установка весов для категорий и производителей, можно товары из какой-то категории или производителя показывать выше или ниже остальных
- части речи
- возможность удаления, замены слов
- индексация по крону
- множество других настроек
Модуль совместим с модулями:
- Search suggestion - поиск с автодополнением
- Фильтр категорий в поиске
- История Поиска
- Похожие товары с морфологией и релевантностью
- Поиск товаров в админке
Модуль совместим с модулями других разработчиков:
По всем вопросам по этим модулям обращайтесь к их разработчикам.
Чем этот модуль отличается от других модулей поиска?
К обычным поисковым модулям относятся: стандартный поиск OpenCart, другие модули поиска, например модуль "Поиск с морфологией и релевантностью".
Как они работают? После того, как пользователь ввел фразу для поиска и нажал кнопку "Искать", модуль поиска для того, чтобы найти все товары, которые соответствуют поисковой фразе, должен обойти все товары в базе данных, причем информация о каждом товаре находится не в одной, а в нескольких таблицах с множеством полей, многие из которых никак не проиндексированы.
Если у вас немного товаров на сайте (десятки, сотни) и быстрый сервер, то поиск у вас будет работать достаточно быстро.
Но если у вас тысячи товаров в магазине (или даже десятки и сотни тысяч) или не самый быстрый сервер, то чем больше у вас будет товаров, тем медленнее будет работать поиск на вашем сайте. В некоторых случаях и 5 и 10 и даже больше секунд, что конечно же очень много, все, что больше 1-2 секунды это уже много, пользователи не будут столько времени ждать, они закроют ваш сайт и пойдут на другой.
Как работает этот модуль?
Этот модуль работает по тому же принципу, что и поисковые системы, поэтому он так и называется.
Возьмем для примера поисковую систему Google. После того, как вы вводите в поле поиска, например, "OpenCart" и нажимаете кнопку "Поиск", Google отображает вам нужные результаты за доли секунды. Это возможно потому, что Google не ищет информацию непосредственно на каждом сайте в момент поиска, он уже до этого обошел все сайты и добавил эту информацию в свои очень быстрые базы данных, где все записи проиндексированы и лежат в базе с нужными весами (какой сайт показывать выше в выдаче, какой ниже). После этого Google осуществляет поиск по своих базах, это дает возможность найти сотни тысяч сайтов за доли секунды!
Именно так работает и этот модуль. Сначала он обходит все товары в магазине и добавляет всю информацию в свои таблицы базы данных с индексами.
Когда пользователь что-то ищет на сайте, поиск не обходит десятки полей в тысячах товаров, а ищет всего в одной таблице по проиндексированному одному полю, поэтому результат пользователь получит не через несколько секунд или даже десятков секунд, а через доли секунды, что в десятки и даже сотни раз быстрее стандартного поиска.
Морфология и релевантность
Как известно, стандартный поиск OpenCart просто ужасный. При поиске он разбивает искомую фразу на отдельные слова, после чего находит все товары, в которых встречается любое из этих слов. В результате при поиске по фразе "Монитор Samsung" на первых позициях может оказаться "монитор Acer" (так как в названии есть слово "монитор") или "ноутбук Samsung" так как в названии есть слово "Samsung". В то время, как нужный товар "Монитор Samsung" может быть где-то на 10-той странице. А если вы напишите в поиске не "ноутбук", а напр. "ноутбуки" или сделаете опечатку в слове "Samsung" то поиск вообще ничего не найдет, так как поиск осуществляется только по точному вхождению слова.
Этот модуль написан для того, чтобы исправить все недостатки стандартного поиска.
Для этого у него есть 2 инструмента:
- Морфология. Поиск не по точному совпадению, а по корням слов. Теперь написав в поиске "ноутбуки", поиск выдаст все товары в которых встречается и "ноутбуки" и "ноутбук" и "ноутбука" итд. Поддерживаемые словари - русский, украинский, английский.
- Релевантность. При поиске на первых позициях будут материалы с большим суммарным весом. Наибольший вес имеет точное вхождение фразы в начало названия товара, потом вхождение одного или нескольких слов в название (чем больше слов тем больший вес), потом вхождение слова в тег, потом целой фразы в описание, потом отдельного слова в описание. Чем больше совпадений, тем больше вес и тем выше будет этот товар в результатах поиска. Вес каждого совпадения можно корректировать в админке.
Возможности
- модуль написан на основе модуля "Поиск с морфологией и релевантностью", поэтому содержит весь огромный функционал того модуля
- использование морфологии и релевантности для более точного поиска
- выбор логики поиска для поиска по фразам из нескольких слов: И, ИЛИ
- поддержка мульти-магазина
- возможность отключить в поиске дату поступления товаров
- разные типы поиска (по корням слов и целым словам)
- режим исправления раскладки клавиатуры ("фззду" -> "apple")
- учитывать наличие на складе (товары, которых нет в наличии будут отображаться в конце поиска), а также в версии 4 и статусов наличия
- возможность добавлять новые поля для поиска, например можно добавить поиска по id товара, мета H1 и почти по любому полю товара.
- для каждого поля можно: указать минимальную длину слова, указать вес вхождения слова в начало или середину поля
- возможность исключить некоторые слова из поиска
- возможность заменить слова при поиске (например слова с ошибками: "aple" -> "apple")
- поддержка нескольких режимов индексации: индексация по крону, автоматическая индексация после каждого добавления, изменения, удаления товара, ручная индексации на странице настроек модуля с поддержкой пакетного создание индексов (можно запустить процесс и оставить страницу открытой на продолжительное время)
- поиск по вхождению
- неточный поиск
- возможность указывать конкретные атрибуты для поиска
Что нового в 4 версии модуля?
- Поиск без учета языка. Теперь легко включается в настройках модуля. Пример: если на украинском языке ввести "одеяло" то найдет "ковдри" итд.
- Полностью переписана функция индексирования, теперь индексирование работает в разы, а иногда и в десятки раз быстрее.
- Полностью переписан механизм неточного поиска, теперь он работает иначе, намного лучше, чем раньше. Ищет с опечатками, неточным написанием, вхождение итд. Для работы нужен MySQL версии 5.7.6 и выше.
- Исправлена ошибка при которой поиск с большим количеством слов при логике поиска И на некоторых хостингах подвешивал MySQL сервер.
-
Тут сразу 2 улучшения:
- во-первых переписана логика поиска И, теперь она работает в разы быстрее и уже не должна нагружать сервер
- во-вторых в настройках добавлено время выполнения поискового запроса, если время вышло то поиск просто завершается. - Поиск по атрибутам теперь можно настраивать, указывать какие именно атрибуты нужно индексировать и искать только по ним, а не все сразу. В магазине может быть 50 атрибутов, а искать нужно только по атрибуту "Цвет", теперь это возможно.
- Сортировка результатов по наличию - теперь можно указывать конкретные статусы товара для товаров, которых нету в наличии. Можно, например убрать из результатов поиска товары "Нет в наличии" и "Снят с производства" но оставить "Под заказ" и "Ожидается через 2 дня".
- Возможно изменять логику поиска с И на ИЛИ во время поиска если ничего не найдено.
- Улучшена работа модуля с украинским языком.
- Улучшен дизайн, дополнительные настройки вынесены в отдельный таб.
- Исправлены другие ошибки, некоторые функции полностью переписаны, а также другие мелкие изменения и улучшение.
Изменения прошлых версий:
Что нового в третьей версии модуля?
-
Поиск Добавлен поиск с использованием транслитерации
Давно многие это просили реализовать, сделал. -
Добавлена возможность указывать очередность поиска между поиском с неправильной раскладкой, транслитерацией, неточным поиском
Раньше это было жестко зашито в коде, сначала шел неточный поиск, а потом если неточный поиск ничего не находит то уже производился поиска по неправильной раскладке, что было не всегда удобно. -
Добавлена точная настройка поиска по Категориям. Товары из определенных категорий можно отображать выше или ниже в поиске или убрать из поиска.
Пример. Есть магазин, который торгует мобильными телефонами. Вместе с телефонами он также торгует аксессуарами к ним: чехлы, защитные стекла, наушники итд. В названии и описании аксессуаров часто присутствует и модель телефона, которая к тому же часто повторяется, так как модели могут отличаться на 1 букву. И когда пользователь ищет какой-то телефон по модели, то и сам пользователь хочет увидеть в поиске именно телефоны и магазину намного выгоднее продать именно телефон, но в поиске на первых позициях могут быть именно чехлы или защитные стекла, а телефон этой модели далеко ниже в результатах поиска. Новая функция решает эту проблему, теперь настроить поиск можно намного гибче. -
Добавлена точная настройка поиска по Производителям. Товары определенных производителей можно отображать выше или ниже в поиске или убрать из поиска.
Тоже самое что и по категориям, только по производителям. Магазин может например поднять в выдаче товары производителя, на которые у магазина больше наценка и больше прибыль с их продажи. -
Добавлена настройка по частям речи. Для определенных полей можно увеличить или уменьшить вес слов какой-то части речи или совсем не добавлять их в индекс.
Например можно не добавлять в индекс такие части речи как предлоги, союзы, междуметия итд. А вес имен существительных или глаголов наоборот увеличить. Работает только для русского языка. -
Добавлена возможно поиска по точному совпадению слова, в более ранних версиях был поиск только по корням слов.
Так как раньше поиск искал по частям слов, то иногда точное совпадение слов было в результатах поиска ниже, чем слова с неполным совпадениям. Например пользователь мог искать "красное платье" и на первой позиции мог быть товар "Красный ремень для платья", а товар "Красное платье в белый горошек" могло быть ниже в выдаче, несмотря на то, что в нем точно совпадают все 2 слова. Эта функция исправляет этот момент. -
Добавлена опция не отображать в результатах товары, которых нету на складе, в более ранних версиях из можно было только отображать в конце списка.
Также многие давно просили реализовать это, сделано. -
Добавлены синонимы.
Теперь можно прописать наборы синонимов и товар будет находиться и по основному слову и по его синонимам. Например по слову "телефон" находить товары, где есть "смартфон". -
Больше десятка других улучшений по поиску, индексации, дизайну и т.д.
Все они не очень большие, но все вместе также значительно улучшают весь поиск.
Что нового во второй версии модуля?
- Поиск по вхождению слова и по суффиксам. Этого многим очень не хватало в 1 версии, так как многим нужен был поиск по вхождению для напр. модели или артикула. Но этого не было в 1 версии, потому что такой поиск, если сделать его просто, очень сильно (в сотни раз) сказался бы на скорости поиска. Во второй версии был написан функционал быстрого (!) поиска по вхождению.
- Более точная релевантность. В 1 версии было 2 веса для слова: если слово первое (в напр. названии товара) и все остальные слова. То есть и слово, которой второе и слово которое 20-е имели один вес. Во 2 версии есть 2 веса: вес первого слова и вес последнего. Все остальные слова внутри получают веса динамически в зависимости от их положения и к-ва слов в названии. Таким образом чем ближе слово к началу тем больше у него вес и товары, у которых искомое слово будет стоять ближе к началу будут выводиться выше в результатах. Мало того, если поиск идет по вхождению, то вес также режется пропорционально части слова. Тем самым достигается большая точность релевантности поиска.
- Добавлен неточный поиск, поиск слов созвучных с искомым. То есть, можно найти товары, даже если ввести какое-то слово с опечаткой или грамматической ошибкой, конечно не все ошибки модуль найдет, но многие - да.
- Лучший алгоритм поиска по логике И. Эта часть кода была полностью переписана, теперь в модуле такой поиск работает по новому алгоритму, который и на скорость не влияет и более точно находит только товары, в которых есть все слова из поисковой фразы.
- Поддержка OpenCart 3.0
Что нового во второй версии модуля?
- Поиск по вхождению слова и по суффиксам. Этого многим очень не хватало в 1 версии, так как многим нужен был поиск по вхождению для напр. модели или артикула. Но этого не было в 1 версии, потому что такой поиск, если сделать его просто, очень сильно (в сотни раз) сказался бы на скорости поиска. Во второй версии был написан функционал быстрого (!) поиска по вхождению.
- Более точная релевантность. В 1 версии было 2 веса для слова: если слово первое (в напр. названии товара) и все остальные слова. То есть и слово, которой второе и слово которое 20-е имели один вес. Во 2 версии есть 2 веса: вес первого слова и вес последнего. Все остальные слова внутри получают веса динамически в зависимости от их положения и к-ва слов в названии. Таким образом чем ближе слово к началу тем больше у него вес и товары, у которых искомое слово будет стоять ближе к началу будут выводиться выше в результатах. Мало того, если поиск идет по вхождению, то вес также режется пропорционально части слова. Тем самым достигается большая точность релевантности поиска.
- Добавлен неточный поиск, поиск слов созвучных с искомым. То есть, можно найти товары, даже если ввести какое-то слово с опечаткой или грамматической ошибкой, конечно не все ошибки модуль найдет, но многие - да.
- Лучший алгоритм поиска по логике И. Эта часть кода была полностью переписана, теперь в модуле такой поиск работает по новому алгоритму, который и на скорость не влияет и более точно находит только товары, в которых есть все слова из поисковой фразы.
- Поддержка OpenCart 3.0
Этот модуль - Поисковая система, версия 4 |
|||||||
---|---|---|---|---|---|---|---|
Скорость поиска | низкая | низкая | очень высокая | ||||
Релевантность | средняя | нету | очень высокая | ||||
Логика И | средняя | средняя | хорошая | ||||
Поиск по вхождению |
|
|
есть | ||||
Неточный поиск | нету | нету | есть | ||||
Транслитерация | нету | есть | есть | ||||
Смена раскладки | нету | есть | есть | ||||
Коэффициенты для категории | нету | нету | есть | ||||
Коэффициенты для производителей | нету | нету | есть | ||||
Настройки частей речи | нету | нету | есть | ||||
Поиск по целому слова | нету | нету | есть | ||||
Синонимы | нету | нету | есть | ||||
Поиск в шапке сайта | нету* | есть | нету* | ||||
Поддержка OpenCart | 1.5 - 3 | 1.5, 2.0 - 3 | 1.5 - 3 | ||||
* - в модуле Поисковая система и Поиск с морфологией и релевантностью нету поиска в шапке сайта, потому этот функционал реализован отдельным модулем - Search Suggestion. Это сделано для большей гибкости. Эти модули отлично работают вместе (при наличии модуля Поисковая система модуль Search Suggestion ищет товары через модуль Поисковая система) но могут работать и отдельно. Лучше, конечно, использовать их вместе.
Модуль совместим с модулями:
- Search suggestion - поиск с автодополнением
- Фильтр категорий в поиске
- История Поиска
- Похожие товары с морфологией и релевантностью
Совместимость:
OpenCart/ocStore 3.x, 2.0.x, 2.1.x, 1.5
Модуль использует IonCube, обычно на 99% хостингов он используется но на всякий случай можете проверить.
Одна лицензия модуля позволяет установить этот модуль на 1 домене.
Демо:
Для связи с автором модуля пишите в ЛС на форуме
Условия оказания поддержки
© Стасюк Владимир (sv2109.com), 2016