Ищется специалист по DLE + PHP + MYSQL + JS (JQERY) + HTACСESS для модернизации / написания модуля улучшенного поиска для CMS DLE (Data Life Engine).
------------------------------
Внимание! Задание тут описываю не полностью, а лишь значительную/самую сложную его часть. Все остальные детали будут обсуждены позже уже с потенциальным исполнителем!
------------------------------
Дано:
Модуль будет работать на статейном сайте (на DLE) с тысячами страниц контента (~8000), и посещаемостью 10к-30к хостов в сутки. Каждая статья на сайте объемом примерно 2к-32к символов. Текущий объем БД 160+mb (постоянно растет, но медленно).
********************
********************
********************
ТЕХЗАДАНИЕ (не полное, см. выше):
**********
- Поиск:
Поиск и сортировка результатов поиска должны осуществляться по максимальному вхождению всех искомых слов в статью, и далее по уменьшению. Т.е. если ищут запрос: "слово1 слово2 слово3 слово4", то сначала выводятся статьи содержащие все 4 искомых слова, затем 3, затем 2, затем уже 1. Лучше если еще будет учитываться и кол-во вхождений того или иного слова для дополнительной сортировки тех постов которые будут найдены на и отсортированы на первой итерации.
**********
- Вывод результатов поиска:
Необходимо написать модуль поиска (или модернизировать штатный), чтобы при поиске выводились НЕ анонсы статей (как это делается по умолчанию в DLE), а релевантные запросу вырезки текста (примерно по 3 из каждой статьи) общей длиной примерно в 450 символов, с подсветкой/выделением искомых фраз (без учета их окончаний) посередине этих вырезок. Важно: слово должно подсвечиваться не одно, а максимальное количество всех запрашиваемых. По типу как это сделано в поисковиках (яндекс, гугл и т.п.). Другими словами – Поиск должен осуществляться по всем словам из запроса – чем совпадений РАЗЛИЧНЫХ слов в одной статье больше – тем ее позиция в выдаче выше. К примеру, не должно быть такого когда ищут по запросу "Слово1 Слово2 Слово3", а в верхних позициях выдаются статьи с вхождением (по всей статье) лишь одного слова из 3, хотя имеются статьи и с полным вхождением всех 3 слов. Далее, чем больше совпадений вообще слов из запроса (не обязательно разных), ну и в конце уже, статьи с единичными вхождениями слов из запроса. В случае если максимально вставок в текст статьи искомых слов не будет хватать на 3 вырезки, то уменьшать их количество увеличивая их размер в символах.
Должна присутствовать обработка окончаний слов (хотя бы в самом простом исполнении, с перебором всех возможных окончаний или обрезке при сравнении последних нескольких букв в слове). К примеру если ищем "на машине", должны найти и подсветиться как статьи с прямым вхождением (в приоритете): "на машине", так и статьи содержащие поисковый запрос в других окончаниях: "на машину", "машина" (предлоги при поиске можно не учитывать), "за машиной" и т.п.
ПРИМЕР (бредотекст чисто для примера):
Запрос:
"машина бесплатно кредит"
Результат поиска:
"... иногда впрочем как говорят сегодня купить машину в кредит очень просто и не стоит никаких проблем приобрести ... помимо этого получить под управление авто бесплатно может каждый без труда и очень быстро ... мы рекомендуем взять Вам очень выгодные кредиты чтобы осуществить все Ваши мечты в кратчайшие сроки ..."
**********
- Также:
- модуль должен быть максимально оптимизирован под большие нагрузки (+кеширование).
- модуль должен быть безопасен для использования (внедрены все проверки на всякие хакерские инъекции)
********************
********************
********************
Внимание! Модуль пишется под заказ, поэтому после его реализации и оплаты, не должно быть никаких его распространений и дальнейших продаж по Интернету!
Контакты:
Skype: Malihonya
ICQ: 5389829
PS: Никаких предоплат. Работа только через проверенных и надежных гарантов/гарант-сервисы!