Вход • Регистрация

Поиск по артикулу или коду товара

  • 19 февраля 2018 г.
  • Приветствую форумчане!

    Подскажите если кто нибудь сталкивался как реализовать на сайте логику поиска таким образом чтобы если полный артикул вводишь, то полное совпадение, так как деталей с таким артикулом больше нет (но соответственно если 2 детали с таким артикулом, то он 2 выдает). Если часть артикула вводим, то он показывает детали у которых совпадает эта часть артикула, а остальные цифры разные.

    Сейчас если забиваем точное соответствие ( например артикул 2111-3705010/57.3705 ) в выдаче куча товаров, а если только чать ( первые 4 цифры артикула 2111 ) то находит только 3 товара.
    Сайт тут
    • 20 февраля 2018 г.
    • Ну, про полное совпадение - я б запрос в БД тупо давал. Наверное. Дальше If (не помогло) {обычный поиск}. В моем смутном понимании. Хотя, скорее всего, есть более человеческие варианты.
  • 20 февраля 2018 г.
  • Бегло если, то похоже, что ваша проблема возникает из-за того, что в артикулах присутствуют недопустимые символы, которые идут на замену после прогона через регулярку..
    Посмотрите класс includes/Searchwords: 61
    Код
    $text = preg_replace('/\s+|[\.,:;\"\'\/\\!\?\(\)\-]/u', ' ', $text);



    Ваш запрос вида "2111-3705010/57.3705" на выходе выглядит следующим образом: "2111 3705010 57 3705"
    • 20 февраля 2018 г.
    • К сожалению манипуляции с этой строкой не к чему не привели
      • 20 февраля 2018 г.
      • Выставите параметр "Искать часть слова" и почистите индекс у модуля магазин в настройках Поиска.

        Во вложениях скрины посмотрите, может я не так понял..

        В каталоге у меня два товара, жирным выделена идентичная часть
        Поисковый запрос - "2111-3705010/57.3705" - выведет уникальный товар
        Поисковый запрос - "2111-370501" - выведет оба товара
        • 20 февраля 2018 г.
        • При точном совпадении ищет кучу товара
          • 20 февраля 2018 г.
          • На скрине "товар" test2 имеет артикул 2111-3705010/57.3705
            Поисковый запрос - "2111-3705010/57.3705"
            Совпадение точнее некуда..
            Закоментированная (грубо ради теста) 61-ая строка дает нужный результат

            Буквально пол часа назад проверял, 6.0.6.7 версия

            • 20 февраля 2018 г. , редакция: 20 февраля 2018 г.
            • http://prntscr.com/iha9wy Закоментированная строка

              http://prntscr.com/ihaahl Результат поиска
              • 20 февраля 2018 г.
              • )))
                а переиндексировали повторно?
              • 20 февраля 2018 г.
              • ваш запрос(сверху) var_dump-ом выведен, после регулярки, т.е. как было
              • 20 февраля 2018 г.
              • запрос без прогона через регулярку +вывод в тело документа совпавшего 1-1 товара
  • 20 февраля 2018 г.
  • Всё ишет, но!
    Берем артикул ‎3302-3501800, все ищет хорошо, но если убрать переднюю часть артикула и оставить ‎3501800, то ничего не находит. И если в поиск вбить колодки газель некст, то вместе с колодками выдает еще 1006 позиций содержащие слова газель и некст.
    • 20 февраля 2018 г. , редакция: 20 февраля 2018 г.
    • Закомментируйте 61 и 62 строку, получите запрос включая символы, если отработает как надо, тогда уже можно регулярку видоизменить немного.
      Только убрать комментарии не забудьте..
  • 20 февраля 2018 г.
  • но, боюсь, что подобного рода фичи должны быть реализованы на уровне всей системы..
    т.к. даже если и был исключен символ дефис из правил, то строка после обработки типографом будет содержать уже не сам символ, а мнемонику –, которую придется сперва найти, потом обратно перевести в символ и происходить это все будет не в одном месте..
    итп итд

Новости

  • 18 июня
  • В сборке большое обновление demo-шаблона, дополнительная защита от спама, улучшение YML-импорта и еще много важного и интересного.
  • 24 апреля
  • В новой сборке совершили революцию в структурировании кастомизированной информации в шаблонах, добавили авторегистрацию пользователей, усовершенствовали защиту от спама, актуализировали накопительную скидку, а также улучшили производительность и стабильность работы системы.
  • 12 января
  • После выхода сборки 7.1 мы выпустили уже три патча, в каждом из которых улучшаем административную часть сайта. Сборка DIAFAN.CMS 7.1.3 уже доступна к установке. 

Форум