Мы сделаем поиск на вашем сайте умным!

Ответы на вопросы

Как работать с синонимами?

Список синонимов можно добавить в панели управления на странице редактирования проекта.
Слова и синоним между собой разделяются запятыми, а сами синонимы между собой разделяются красной строкой.

Пример:
телефон,смартфон
телефон,мобильник
телефон,мобильный

Правила формирования синонимов
Допустимые конструкции для работы с синонимами:

  • Одно слово,одно слово
  • Одно слово,много слов

Пример одно слово,одно слово:
телефон,смартфон

Пример одно слово,много слов:
смартфон,мобильный телефон

Важен порядок
Связка синонимов работает в одну сторону.
Пример:
Пила,бензопила

В этом случае, при вводе поискового запроса пила будут показаны бензопилы. При этом при запросе бензопилы будут показаны только бензопилы.
Для показа по запросы бензопилы пил из ассортимента нужно добавить еще одну связку синонимов:
бензопила,пила

Размер букв значения не имеет.

Как можно изменить формат отображения товаров в поисковой выдаче?

Созданы Vue.js шаблоны на уровне отображения карточки товара.
Можно создать свой шаблон на уровне каждой категории и переопределять стили CSS.

Какая скорость ответа на запрос?

Средняя скорость ответа на запрос меньше 100 мс.

Как установить код?

Есть несколько способов установить код:

  1. непосредственно в HTML код страницы(видео-инструкция есть в личном кабинете)
  2. через Google Tag Manager
Какие товары увидит пользователь после ввода поискового запроса?

В результаты поисковой выдачи попадают все товары, которые были переданы при помощи YML файла, который был вами указать в настройках проекта в панели управления.

Также после загрузки фида можно поставить галочку напротив пункта «Учитывать наличие». В этом случае пользователь увидит только те товары, которые находятся в наличии на основе соответствующего тега из YML фида.

Как изменить оформления модуля поиска, например цвет ссылок и шрифт?

CSS customization

  • все классы начинаются с l-ss-c-*
  • все стили страницы описанные как

<style class=»l-ss-styles»>
.l-ss-c-search-input {
border: 1px dashed #000;
}
</style>
будут скопированы внутрь элементов

  • все хост обертки элементов имеют классы

l-ss-c-host-wrapper
l-ss-c-host-wrapper-is-[type] -> l-ss-c-host-wrapper-is-search-input

l-ss-c-is-mobile — detected mobile device

l-ss-c-is-phone-only-small

l-ss-c-is-phone-only-small — screen size >= 100px
l-ss-c-is-phone-only — screen size >= 599px
l-ss-c-is-tablet-portrait-up — screen size >= 600px
l-ss-c-is-tablet-landscape-up — screen size >= 900px
l-ss-c-is-desktop-up — screen size >= 1200px
l-ss-c-is-big-desktop-up — screen size >= 1800px

l-ss-c-host-wrapper-is-ready

  • все root элементы внутри кастом элемента могут иметь классы

l-ss-c-[name], ex. l-ss-c-search-popup

l-ss-c-is-not-responsive — нет мета тега
l-ss-c-is-mobile — detected mobile device

l-ss-c-is-phone-only-small — screen size >= 100px
l-ss-c-is-phone-only — screen size >= 599px
l-ss-c-is-tablet-portrait-up — screen size >= 600px
l-ss-c-is-tablet-landscape-up — screen size >= 900px
l-ss-c-is-desktop-up — screen size >= 1200px
l-ss-c-is-big-desktop-up — screen size >= 1800px

Можно ли брендировать виджет?

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

Как можно привяфзать код к разным строкам поиска?

Для реализации этой задачи необходимо добавить дополнительную строку e.CombinedSearchInput.mount с указанием дополнительного элемента подключения

! function(e, t, n, c, o) {
e[o] = e[o] || function() {
(e[o].a = e[o].a || []).push(arguments)
}, e[o].h = c, e[o].n = o, e[o].i = 1 * new Date, s = t.createElement(n), a = t.getElementsByTagName(n)[0], s.async = 1, s.src = c, a.parentNode.insertBefore(s, a)
}(window, document, «script», «https://cdn2.searchbooster.net/scripts/v2/init.js«, «searchbooster»), searchbooster({
«theme»: «base»,
«apiUrl»: «//api4.searchbooster.io»,
«popup»: {
«search»: true
},
«apiKey»: «********************»,
«search»: {
«groupCategories»: true
},
initialized: function(e) {
        e.CombinedSearchInput.mount(‘#mob-search-input’);
              e.CombinedSearchInput.mount(‘#title-search-input’);
}
});

Можно ли отследить переход пользователя по товару?

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

Входит ли в тариф E-commerce поиск в мобильном приложении или telegram-боте?

Да — в любом тарифе с опцией API интеграция допускается использование API в мобильном приложении, CRM или для любых других целей

Как работает поиск по картинкам

Мы выкачиваем картинки из товарного фида и передаем их в специальную нейросеть. Нейросеть преобразовывает изображение в набор чисел-характеристик изображения, далее, когда пользователь загружает свое изображение, оно также прогоняется через нейросеть. Результаты поиска содержат те изображения, векторное расстояние между которыми с искомой картинкой минимально

Можно ли группировать товары в карточки, например по цвету и объему (краска может быть разного объема и цвета). Если да, то как? Какое количество параметров для группировки в карточку максимально?

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

Можно ли влиять на ранжирование в поисковых подсказках?

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

Можно ли поменять/убрать какие-то типы подсказок (история поиска, категория) из подсказок?

В данный момент нет, но можно доработать.

Как можно влиять на ранжирование товаров в листинге?

Можно задавать кастомную формулу ранжирования — ориентироваться на числовые параметры из товаров, учитывать наличие, настраивать число возможных опечаток.

Как изменить размер шрифта?

Можно внести изменения на вашей стороне в inline версию CSS:

<style class=»l-ss-c-styles»>
.l-ss-c-root {
font-size: 16px;
}
</style>

В каком формате необходимо предоставить фид?

Универсальным форматом для нас является YML (Yandex Market Language). Но при необходимости мы можем преобразовать ваш фид в необходимый формат, например из формата CSV.

Как можно проверить наш фид на валидность?

Проверить свой фид на валидность вы можете и без нашей помощи здесь: https://webmaster.yandex.ru/tools/xml-validator/
Необходимо выбрать «Маркет» и далее загрузить файл для проверки по ссылке, например, из облака.
Также, если возникнет потребность, мы можем конвертировать ваш фид в yml из любого удобного вам формата.

Можно ли осуществлять поиск по регионам?

Есть возможность поиска по определенный регионам, при этом учитывая доступность товара в регионе, возможность к доставке и так далее. Для осуществления подобного подобного поиска необходимо указать эти данные в фиде, например в формате:
<region id=»RU-AD»>
    <available>true</available>
    <price>23</price>
    <id>123</price>
            …
 </region>

Можно ли осуществлять поиск по голосу?

Да, можно искать с использованием голоса.

Можно ли осуществлять поиск по картинкам?

Да, можно искать товары по картинке, загрузив ее как файл или по ссылке.

Мы работаем на территории Украины, могут ли возникнуть трудности при интеграции?

Трудностей не возникнет, на данном этапе все проблемы подобного плана решены. У нас уже имеется ряд клиентов из Украины, с которым успешно ведется работа.

Поддерживается ли мультиязычность в поиске?

Да, поиск можно осуществлять на разных языках. Например, на русском и украинском.

Как формируется цена за наши услуги?

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

Есть ли «живой» поиск?

Да, для включение живого поиска стоит внести небольшие изменения в код виджета. С этим мы поможем.

В поиске выводятся не только те товары, которые я искал, почему так и что делать?

В проекте вы можете настроить «фильтрацию» выдачи, товары будут искаться от полного прямого совпадения с текстом запроса до самого расширенного формата, где будут выдаваться товары даже по минимальному совпадению с запросом.
Можно рассмотреть конкретный набор шагов:
Строгий поиск с автодополнением, строгий поиск с исправлением раскладки, обычный поиск, обычный поиск с исправлением раскладки и т.д. Переключение на следующий шаг идет только если ничего не нашлось на предыдущем.

В теории, можно настроить так чтоб исключить ситуацию «ничего не найдено»?

Да, но есть шанс что там уже будет не очень релевантная выдача (если такого товара совсем нет или он как-то по другому назван).

У нас в фиде есть нестандартные параметры товара, по ним может осуществляться поиск?

Да, и по таким параметрам мы можем осуществлять поиск.

Буквы на месте цены можно ставить? Что-то вроде “Последняя цена продажи цена.”

Буквы на данном этапе не поймёт. Цена — чисто числовое поле. Всю другую необходимую информацию можно передать в других тегах.

Какие есть подписи к товарам?

Из коробки есть «В наличии» и «Гарантия производителя» — можем расширить список любыми нужными.

Подписи к товарам вроде «В наличии» можно убрать?

Да, можно. Их можно включить и выключить по вашему запросу.

Можем ли мы ранжировать товар по популярности в выдаче?

Ранжировать товар мы можем по любой необходимой вам метрике (это может быть не только популярность, но и маржинальность, например). Данные вы можете передавать нам с вашей стороны, или мы сами можем подбирать для вас «популярность» товаров.
Для передачи показателя необходимо завести в фиде отдельный тег, например, <param name=»popularity»>.

Количество товаров, которое выдает поиск — ограничено? Или он выдаёт всё, что возможно по запросу? Если ограничено, то как эти ограничения менять.

Количество результатов задается параметрами limit (сколько строчек выдавать) и skip (начиная с какой строчки).

Ручные подсказки привязываются к потенциальным запросам пользователя?

Да, они синхронизируются с уже введенным запросом пользователя.

Есть ли статистика о поиске?

Да, статистика есть, ее можно посмотреть в проекте. Также мы можем передавать данные в Google Analytics, если ранее у вас был настроен модуль учета статистики внутреннего поиска.

Можно ли настраивать период, за который выводится статистика?

По умолчанию статистика выдается за весь период. Статистику можно ранжировать по времени (например, посмотреть информацию за последнюю неделю).

Допустим у меня есть несколько сайтов для одного магазина, например msk.market.ru и spb.market.ru, как в таком случае будет собираться статистика?

Статистика в личном кабинете идет по конкретному фиду — если фид один для всех сайтов, то статистика будет общая.

Нужно ли отправлять статистику по кликам на товары в поисковых результатах, или вы ведете свою?

Мы сами собираем информацию о кликах в своем виджете, но если интеграция по API — отсылать нужно отдельно.

Как получить доступ к проекту в личном кабинете?

Зарегистрироваться на сайте admin.searchbooster.io, и далее вы можете сами создать проект. Или мы можем сделать это за вас и передать доступ вам. Доступ к одному проекту с разных учетных записей на данный момент, к сожалению, невозможен.

Как мне управлять фильтрами?
Это можно сделать в разделе «Категории»  в проекте, фильтра привязаны к конкретным категориям.

 

Что значит обновление фида?

Мы периодически выкачиваем фид с товарами и синхронизируем поиск с ним. То есть если вы добавили что-то новое в фид — оно появится в поиске только после обновления.

Почему некоторых товаров нет в подсказках?

У нас сейчас показываются до 3х товаров. Мы в ближайшем будущем расширим число подсказок — сделаем его гибким, исходя из общего количества найденных подсказок.

Допустим у меня есть несколько сайтов для одного магазина, например msk.market.ru и spb.market.ru, как в таком случае происходит интеграция?

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

Оформление происходит по договору или оферте?

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

Какие есть альтернативные способы оплаты?

Мы можем также принять наличные или с корпоративной карты.

Как осуществляется работа с нерезидентами РФ?

Мы можем работать с не резидентами РФ.
Для этого есть 2 способа:
1. Выставление электронного платежа. Вы его можете оплатить банковской картой физического или юридического лица. После платежа получаете кассовый чек.
2. Оплата по договору. Тут мы должны заключить договор между нашими юридическими лицами.
В договоре в качестве судебной зоны будет указана Москва.

Параметр uuid — это некоторая константа, привязанная к сайту или ее надо получать отдельными запросами?

Да — это отдельная константа. Мы его выдаем и далее вы уже во всех запросах ее используете.

Как формируется и на что влияет параметр запроса searchId?

Он нужен для отслеживания статистики — по каждому searchId мы логируем клики и можем посмотреть что искал конкретный пользователь и куда кликал. Далее эта информация будет использоваться для машинного обучения. В виджете он генерируется на клиенте случайным образом. При работе по API можно поступить также.

В схеме Offer есть labels. Для чего они и откуда берутся?
Это лейблы, которые появляются в выдаче рядом с товаром. Ознакомиться с вопросами по ним вы можете выше.
В шаблоне YML есть раздел «brands». Где он используется? Он обязательный?

Не обязательный. Используется для задания ссылок на бренды — и при клике в подсказках пользователь может сразу попасть на страницу бренда.

В описании YML указано, что для категорий используется нестандартный атрибут «url». Для чего он?

Для быстрого перехода на категорийную страницу из подсказок. Не обязательный, аналогично brand.

Пример кода для установки на сайт

Код можно поставить через Google Tag Manager в произвольный тег HTML.

<div>
    <div id="search-node" class="input-lg"></div>
</div>

<script>
    (function (e, t, n, o, c) {
        e[c] = e[c] || function () {
            (e[c].a = e[c].a || []).push(arguments);
        }, e[c].h = o, e[c].n = c, e[c].i = 1 * new Date, s = t.createElement(n), a = t.getElementsByTagName(n)[0], s.async = 1, s.src = o, a.parentNode.insertBefore(s, a);
    })(window, document, 'script', 'https://cdn.searchbooster.io/v1/init.js', 'searchbooster');

    searchbooster({
        theme: 'base',
        apiUrl: '//api2.searchbooster.io',
        popup: {
            search: true
        },
        apiKey: 'QWERTY-QWERTY-000-000-qwerty123456', #уникальный ключ активации сервиса
        initialized: function(SearchBooster) {
            SearchBooster.CombinedSearchInput.mount('#search-node'); #search-node это id элемента на странице, к которому подключаем поиск
        },
    });
</script>

<div id="search-node" class="input-lg"></div> #div на вашем сайте, который представляет поле для поиска