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

Если вы хотите, чтобы система искала по запросу DJI, а не ВОШ, то для этого в параметрах стандартного компонента bitrix:catalog.search надо добавить строку:

Нам будет приятно

Еще интересное в блоге

Работа с параметрами ссылки

Как сделать название раздела инфоблока заголовком страницы

Будем рады работать именно с вами

Политика конфиденциальности персональных данных

  1. Общие положения.
  1. Настоящая Политика конфиденциальности персональных данных (далее — Политика) действует в отношении всех персональных данных, которую компания Keengo (далее – Компания), может получить от пользователя (лица, заполнившего форму обратной связи, использующего другие сервисы официального сайта keengo.ru (далее – Сайт)), в частности в ходе: отправки отзывов или вопросов, заказа услуг, участия в рекламных и/или маркетинговых кампаниях или акциях и/или ином взаимодействии (далее – Услуги).
  2. Заполняя форму обратной связи и нажимая кнопку «Согласен/на», расположенную на странице Сайта, на которой размещена форма обратной связи, а равно указывая свои персональные данные при использовании других сервисов Сайта, пользователь выражает согласие с настоящей Политикой и указанными в ней условиями обработки и передачи его персональных данных. Согласие Пользователя на предоставление, обработку и передачу его Персональных данных Компании в соответствии с Политикой является полным и безусловным.
  3. Посетителям Сайта следует воздержаться от заполнения формы и/или от использования других сервисов Сайта в случае несогласия (полного или частичного) с Политикой, а равно несогласия предоставить персональные данные.
  4. Согласие, даваемое пользователем, включает в себя согласие на сбор, систематизацию, накопление, хранение, уточнение (обновление, изменение), использование, занесение в базы данных (в том числе электронные) Компании, передачу внутри Компании другим отделам и подразделениям или поставщику услуг, обязующегося выполнять условия договора о защите персональных данных, в целях рассылки информационных материалов и/или в рекламных целях (в том числе рассылку приглашений на мероприятия, проводимые/организованные Компанией), трансграничную передачу, блокирование, обезличивание, уничтожение персональных данных.
  5. Согласие, даваемое пользователем, распространяется на следующие персональные данные: фамилия, имя, отчество, адрес электронной почты, должность, наименование организации, в которой работает пользователь, контактный телефон.
  6. Срок действия согласия пользователя является неограниченным, однако, пользователь вправе в любой момент отозвать настоящее согласие путём направления письменного уведомления на адрес электронной почты: info@keengo.ru, с пометкой «отзыв согласия на обработку персональных данных».
  • Персональные данные пользователей, которые получает и обрабатывает Компания.
    1. В рамках настоящей Политики под персональными данными пользователя понимаются персональные данные, которые пользователь предоставляет о себе самостоятельно при заполнении формы обратной связи на Сайте, при использовании других сервисов Сайта, при регистрации (создании учётной записи) на Сайте или в процессе использования услуг, предоставляемых Компанией. Соответствующая информация явно обозначена, к ней, в частности отнесены: фамилия, имя, отчество, адрес электронной почты, должность, наименование организации, в которой работает пользователь, контактный телефон. Иная информация предоставляется пользователем на его усмотрение.
    2. Компания исходит из того, что пользователь представляет достоверные персональные данные, а также, что пользователь имеет право предоставить персональные данные.
    3. 1С Битрикс.
      1. Компания использует средство 1С Битрикс для сбора сведений об использовании Сайта, таких как частота посещения Сайта пользователями, посещенные страницы и сайта, на которых были пользователи до перехода на данный Сайт. 1С Битрикс собирает только IP-адреса, назначенные пользователю в день посещения данного Сайта, но не имя или другие идентификационные сведения.
      2. 1С Битрикс размещает постоянный cookie-файл в веб-браузере пользователя для идентификации в качестве уникального пользователя при следующем посещении данного Сайта. Этот cookie-файл не может использоваться никем, кроме 1С Битрикс. Сведения, собранные с помощью cookie-файла, будут храниться на серверах, находящихся в Российской Федерации.
      3. Компания использует сведения, полученные через 1С Битрикс, только для обработки и хранения персональных данных.
      4. Цели обработки персональной информации пользователей.
        1. Компания обрабатывает только те персональные данные, которые необходимы для оказания услуг.
        2. Персональную информацию пользователя Компании может использовать в следующих целях:
          1. Идентификация стороны в рамках оказания услуги.
          2. Рассылка рекламных и/или маркетинговых материалов Компании, рассылка приглашений на мероприятия, конференции, выставки, проводимые и/или организуемые Компанией, проведение телемаркетинговых компаний.
          3. Проведение статистических и иных исследований, на основе обезличенных данных.
          4. Передача персональных данных пользователя третьим лицам.
            1. В отношении персональных данных пользователя сохраняется ее конфиденциальность, кроме случаев обработки персональных данных, доступ неограниченного круга лиц к которым предоставлен пользователем либо по его просьбе.
            2. Компания вправе передать персональную информацию пользователя третьим лицам в следующих случаях:
              1. Пользователь предоставил свое согласие на такие действия.
              2. Передача персональных данных организациям, которые оказывают услуги Компании по рассылке рекламных и/или маркетинговых материалов, организации и проведению мероприятий, конференций, выставок, телемаркетингу, обзвону потенциальных клиентов Компании.
              3. Передача необходима для достижения целей, осуществления и выполнения функций, полномочий и обязанностей, возложенных законодательством Российской Федерации на Компанию.
              4. Меры, применяемые для защиты персональных данных пользователей.
                1. Компания принимает необходимые и достаточные организационные и технические меры для защиты персональных данных пользователя от неправомерного или случайного доступа, уничтожения, изменения, блокирования, копирования, распространения, а также от иных неправомерных действий с персональными данными третьих лиц.
                2. Права и обязанности пользователя.
                  1. Компания предпринимает разумные меры для поддержания точности и актуальности, имеющихся у Компании персональных данных, а также удаления устаревших и других недостоверных или излишних персональных данных, тем не менее, Пользователь несет ответственность за предоставление достоверных сведений, а также за обновление предоставленных данных в случае каких-либо изменений.
                  2. Пользователь может в любой момент изменить (обновить, дополнить, блокировать, уничтожить) предоставленную им персональную информацию или её часть, а также параметры её конфиденциальности путем обращения в Компанию.
                  3. Пользователь вправе в любой момент отозвать согласие на обработку Компанией персональных данных путём направления письменного уведомления на электронный адрес: info@keengo.ru с пометкой «отзыв согласия на обработку персональных данных», при этом отзыв пользователем согласия на обработку персональных данных влечёт за собой удаление учётной записи пользователя с Сайта и баз данных Компании, а также уничтожение записей, содержащих персональные данные, в системах обработки персональных данных Компании.
                  4. Пользователь имеет право на получение информации, касающейся обработки его персональных данных Компанией.

                    Keengo · Web Design & Development
                    © 2010–2019 Все права защищены

                    Сегодня вышла версия модуля поиска 9.5.3 (пока бета).
                    В ней реализовано определение раскладки совсем как у "взрослых" поисковиков.
                    Набираем в строке поиска "gfgf", а результаты получаем для "папа".

                    Алгоритм основан на анализе частотности буквосочетаний конкретного языка.
                    Берем запрос, переводим буквы в номера клавиш и получаем язык на котором набрано слово или фраза.

                    Несмотря на вероятностный характер алгоритм довольно точен.
                    На английском и русском словарях (30000 и 50000 слов) вероятность ошибки менее 1%.

                    Теперь о главном: поддержка автоопределения раскладки добавлена в компоненты search.title и search.page. Она включается и выключается параметром компонента.
                    Плохая новость заключается в том, что по умолчанию этот параметр включен. И кастомизированные шаблоны нуждаются в доработке. А именно:

                    Эти строки надо добавить в шаблон сразу после
                    .

                    будет искать так, как запросил пользователь, или опять сменит раскладку.
                    Вобщем, есть ли возможность искать по исходному запросу?

                    Супер, будем тестировать.

                    Максим, а как он понимает, что надо переключить? "baby" вот переключает к "ифин", к примеру

                    Надо сделать так, чтобы содержимое запроса в кавычках не исправлялось.

                    Мне кажется нужно учитывать наличие результатов по исходному запросу.
                    Если по исходному запросу ничего нет, то автоматически переводить.
                    Это увеличит нагрузку, но позволит избежать такого как сейчас:

                    Принтер HP -> Ghbynth HP
                    Принтер epson -> Ghbynth epson
                    HP -> РЗ

                    "Принтер" в след. версии будет определяться верно.

                    Мы перед реализацией функции думали пойти именно таким путем. И поняли, что это не решает одной из главных задач — меньше ошибочных поисков.

                    Вы можете кастомизировать компонент search.page с реализацией той логики которая вам нужна.
                    На это уйдет максимум полчаса:
                    1) комментируем строки 309-318
                    2) в строку 412 переносим закомментированные функции определения раскладки

                    И поняли, что это не решает одной из главных задач — меньше ошибочных поисков.

                    А в сторону Google/Яндекс не курили, Максим? Может можно обратиться удаленно к их поиску и получить результаты. Ну и дополнительно от них думаю передается инфа что запрос был изменен, или "может вы имели в виду. ".

                    Вариант второй. Вести индексированную базу авторитетных источников. В коменте ниже упоминается "SDRH-16M16". Так вот, если SDRH упоминается где-либо в title (ИБ, блоги, форумы, . ), то ставить галочку "такое слово существует" и скрипт ничего не меняет. В противном случае менять раскладку. Наверняка на спец.сайтах такие названия есть в заголовках (каталог товаров), так что процент точных попаданий вырастет.

                    Вариант третий. Смотреть сколько результатов с измененной раскладкой. И если для ЫВКР-16Ь16 (тот же пример) ничего не нашлось, то наверняка менять раскладку не стоит.

                    Ну и комбинация 2 и 3 варианта думаю очень сильно уменьшит промахи.

                    Я делал на одном проекте так (задача стояла также, искать по тому что вводится):
                    — разбиваем на слова
                    — Каждое слово переводим из английской раскладки в русскую, и если оригинал и перевод не совпадают, ищем в базе и на русском и на аглийском.

                    Т.е. как то так:
                    Ткани оптом — (ткани) & (оптом)
                    Nrfyb jgnjv — (nrfyb | ткани) & (jgnjv | оптом)
                    Nrfyb оптом — (nrfyb | ткани) & (оптом)

                    когда-то воспользовался рецептом из этого поста
                    все дело в определении популярные лемм русского языка в англ раскладке.

                    "Использовать поиск яндекса/гугла прямо на сайте тоже нельзя, заказчика не устраивает такое решение."
                    а зачем прямо на сайте? curl’om его 🙂 и ответ парсить