# InSales

# Установка приложения

  1. В панели управления REES46 вашего магазина установите значение InSales в разделе "Настройки" - "Настройки магазина" -> "CMS" и нажмите кнопку "Сохранить". InSales настройка
  2. Затем перейдите в раздел "Настройки" - "Настройки InSales" и нажмите кнопку "Настроить". InSales настройка
  3. Заполните форму в которой требуется указать доступ к данным магазина через InSales API и нажмите кнопку "Сохранить". InSales настройка Чтобы создать доступ к данным магазина через InSales API необходимо в панели администрирования InSales перейти в "Расширения" -> "Разработчикам" -> "Ключи доступа", указать название ключа и нажать кнопку "Создать новый ключ доступа". InSales настройка Далее заполняем форму, используя данные созданного ключа. InSales настройка
  4. Запускаем установку плагина. InSales настройка
  5. Активируем нужные настройки после успешной установки. InSales настройка

# Создание товарного фида

В панели администрирования вашего магазина перейдите на страницу 'Товарные выгрузки' - "Товары" -> "Товарные выгрузки".

InSales выгрузка

В раскрывающемся списке выберите "Яндекс.Маркет - Произвольная выгрузка", нажмите "Добавить".

На следующей странице заполните следующие поля:

  • название - используйте уникальное название "REES46", чтобы всегда помнить, что данный XML-файл предназначен для сервиса персонализации
  • категории - выберите категории с товарам, которые необходимо выгрузить, необходимо, чтобы все товары попали в создаваемый XML-файл
  • название организации и название компании - необходимы для идентификации магазина
  • размер картинок - указывайте изображения с оригинальным размером
  • не выгружать отсутствующие товары - отметьте этот пункт, чтобы посетителям не рекомендовались отсутствующие на складе товары
  • кодировка - выберите UTF-8
  • замените строку вывода категорий в шаблоне выгрузки на:
<category id="{{collection.id}}" {% if collection.parent_id %}parentId="{{collection.parent_id}}"{% endif %} url="{{marketplace.url}}/collection/{{collection.handle}}">{{collection.title}}</category>
  • Если трекинг будет работать без вариантов товара (в качестве id товара используем product.id (id карточки товара)), замените предлагаемый шаблон блока offer следующим кодом и сохраните настройки:
<offer type="vendor.model" available="{% if product.available %}true{% else %}false{% endif %}" id="{{product.id}}" >
  <url>{{account.url}}/product_by_id/{{product.id}}</url>
  <price>{{product.price}}</price>
  <oldprice>{{product.old_price}}</oldprice>
  <currencyId>{{product.currency_id}}</currencyId>
  <categoryId>{{collection.id}}</categoryId>
  {%for image in product.images limit: 1 %}
  <picture>{{image.url}}</picture>
  {% endfor %}
  <vendor>{{product.properties.vendor}}</vendor>
  <model>{{product.title}}</model>
  <description>{{product.description}}</description>
</offer>
  • Если трекинг будет работать с вариантами товара (в качестве id товара используем id варианта товара), замените предлагаемый шаблон блока offer следующим кодом и сохраните настройки:
{% for variant in product.variants %}
  <offer id="{{variant.id}}" available="true" group_id="{{product.id}}" >
    <name>{{product.title}}</name>
    <model>{{variant.title}}</model>
    <url>{{account.url}}/product_by_id/{{product.id}}</url>
    {% if variant.images.size %} 
      <picture>{{variant.images.first.url}}</picture>
    {% else %}
      <picture>{{product.images.first.url}}</picture>
    {% endif %}
    <categoryId>{{collection.id}}</categoryId>
    <price>{{variant.price}}</price>
    <old_price>{{variant.old_price}}</old_price>
  </offer>
{% endfor %}

Укажите ссылку на созданный XML-файл в процессе регистрации магазина или в настройках в личном кабинете REES46.

# Настройка событий

Откройте редактор шаблонов вашей текущей темы. Для этого в левом меню выберите "Дизайн", затем на открывшейся странице выберите "Редактор HTML/CSS/JS" текущей темы.

Информация

Вы можете сделать копию текущей активной темы и внести все изменения в неё. Затем, когда вы убедитесь, что всё работает правильно, копию темы можно будет опубликовать.

Если что-то не получается

Обратите внимание, что если какой-то функционал (например, трекинг событий или отображение блоков рекомендаций) не работает даже в случае соблюдения всех инструкций документации, то скорее всего возникает конфликт с каким-то другим модулем или вы используете модифицированные шаблоны InSales. Пожалуйста, свяжитесь с нами по адресу desk@rees46.ru, и мы поможем вам разобраться с возникшей проблемой.

# Настройка отслеживания просмотра товаров и категорий

Откройте основной шаблон темы: layouts.layout.liquid

Где под тегом <head> вставьте следующий код:

Не забудьте сохранить шаблон.

# Настройка отслеживания просмотра товаров и категорий, если работаем с вариантами товара

Обратите внимание

Данный вид трекинга работает только при наличии EventBus (opens new window) в шаблоне сайта.

  • Необходимо проверить, что шаблон сайта InSales поддерживает EventBus (opens new window). Для этого на станице товара в браузере открываем консоль в инструментах разработчика и вводим EventBus, если консоль не вернула ошибку, значит шаблон поддерживает EventBus и мы можем использовать трекинг с вариантами товара. Пример с поддержкой EventBus Успешная поддержка EventBus Пример с ошибкой Ошибка поддержки EventBus

  • Откройте основной шаблон темы: layouts.layout.liquid, затем под тегом <head> вставьте следующий код:

# Настройка отслеживания оформления заказа

Откройте страницу "Счётчики и коды" на настройках магазина. Затем по поле "JavaScript-код для вывода на странице успешного оформления заказа" вставьте следующий код выше или ниже существующего.

<!-- REES46 purchase tracking begin -->
{% if order %}
<script type="text/javascript">
    {% if order.client %}
        window.__rees_user_id = {{ order.client.id }};
        window.__rees_user_email = '{{ order.client.email }}';
        window.__rees_user_phone = '{{ order.client.phone }}';
    {% endif %}
    window.REES46_ORDER = {
        order: {{ order.number }},
        order_price: {{ order.total_price }},
        products: []
    };
    {% for item in order.items %}
    window.REES46_ORDER.products.push({
        id: {{ item.product.id }},
        amount: {{ item.quantity }},
        price: {{ item.sale_price }}
    });
    {% endfor %}
</script>
{% endif %}
<!-- REES46 purchase tracking end -->

Не забудьте сохранить настройки.

# Настройка отслеживания оформления заказа, если работаем с вариантами товара

Откройте страницу "Счётчики и коды" на настройках магазина. Затем по поле "JavaScript-код для вывода на странице успешного оформления заказа" вставьте следующий код выше или ниже существующего.

<!-- REES46 purchase tracking begin -->
{% if order %}
<script type="text/javascript">
    {% if order.client %}
        window.__rees_user_id = {{ order.client.id }};
        window.__rees_user_email = '{{ order.client.email }}';
        window.__rees_user_phone = '{{ order.client.phone }}';
    {% endif %}
    window.REES46_ORDER = {
        order: {{ order.number }},
        order_price: {{ order.total_price }},
        products: []
    };
    {% for item in order.items %}
    window.REES46_ORDER.products.push({
        id: {{ item.variant.id }},
        amount: {{ item.quantity }},
        price: {{ item.sale_price }}
    });
    {% endfor %}
</script>
{% endif %}
<!-- REES46 purchase tracking end -->

Не забудьте сохранить настройки.

Обратите внимание

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

# Товарные рекомендации

Подробная инструкция по созданию и управлению блоками товарных рекомендаций находится в Товарные рекомендации.

В этой главе описывается процедура размещения блока рекомендаций на страницы сайта на платформе InSales.

# Уникальный идентификатор блока рекомендаций

Чтобы узнать уникальный идентификатор блока рекомендаций необходимо перейти в раздел "Товарные рекомендации" -> "Блоки рекомендаций" выбрать вкладку "Все блоки", найти нужный блок, код будет указан в описании блока

Уникальный идентификатор блока рекомендаций

Также можно перейти в сам блок рекомендаций и на вкладке "Статистика" нажать в правом верхнем углу кнопку “Скопировать код”

Кнопка скопировать код блока рекомендаций

Копируем data-recommender-code из модального окна

data-recommender-code модальное окно

# Главная страница

Блок вставляются вверху шаблона "Главная страница" (index.liquid). Обратите внимание, что каждый блок имеет уникальный идентификатор, который необходимо скопировать из примера в личном кабинете REES46 в код ниже.

<!-- REES46: блок на главной странице -->
<div class='rees46-recommend'
     data-recommender-block='dynamic'
     data-recommender-code='УНИКАЛЬНЫЙ_ИДЕНТИФИКАТОР_БЛОКА_РЕКОМЕНДАЦИЙ'>
</div>
<!-- /REES46: блок на главной странице -->

# Страница категории

Блок вставляется вверху шаблона "Категория" (collection.liquid). Обратите внимание, что каждый блок имеет уникальный идентификатор, который необходимо скопировать из примера в личном кабинете REES46 в код ниже.

<!-- REES46: блок на странице категорий -->
<div class='rees46-recommend'
     data-recommender-block='dynamic'
     data-recommender-code='УНИКАЛЬНЫЙ_ИДЕНТИФИКАТОР_БЛОКА_РЕКОМЕНДАЦИЙ'
     data-recommender-category='{{ collection.id }}'>
</div>
<!-- /REES46: блок на странице категорий -->

# Карточка товара

Блок вставляется в шаблон "Товар" (product.liquid) внизу или над описанием текущего товара. Обратите внимание, что каждый блок имеет уникальный идентификатор, который необходимо скопировать из примера в личном кабинете REES46 в код ниже.

<!-- REES46: блок на странице товара -->
<div class='rees46-recommend'
     data-recommender-block='dynamic'
     data-recommender-code='УНИКАЛЬНЫЙ_ИДЕНТИФИКАТОР_БЛОКА_РЕКОМЕНДАЦИЙ'
     data-recommender-item='{{ product.id }}'>
</div>
<!-- /REES46: блок на странице товара -->

# Страница корзины

Блок вставляется внизу шаблона "Корзина" (cart.liquid). Обратите внимание, что каждый блок имеет уникальный идентификатор, который необходимо скопировать из примера в личном кабинете REES46 в код ниже.

<!-- REES46: блок на странице корзины -->
<div class='rees46-recommend'
     data-recommender-block='dynamic'
     data-recommender-code='УНИКАЛЬНЫЙ_ИДЕНТИФИКАТОР_БЛОКА_РЕКОМЕНДАЦИЙ'>
</div>
<!-- /REES46: блок на странице корзины -->

# Страница с результатами поиска

Блок вставляется внизу шаблона "Поиск" (search.liquid). Обратите внимание, что каждый блок имеет уникальный идентификатор, который необходимо скопировать из примера в личном кабинете REES46 в код ниже.

<!-- REES46: блок на странице поиска -->
<div class='rees46-recommend'
     data-recommender-block='dynamic'
     data-recommender-code='УНИКАЛЬНЫЙ_ИДЕНТИФИКАТОР_БЛОКА_РЕКОМЕНДАЦИЙ'
     data-recommender-search_query='{{ search.query | escape }}'>
</div>
<!-- /REES46: блок на странице поиска -->

# Страница 404

Блок вставляется в шаблон "404" (page_404.liquid). Обратите внимание, что каждый блок имеет уникальный идентификатор, который необходимо скопировать из примера в личном кабинете REES46 в код ниже.

<!-- REES46: блок на странице 404 -->
<div class='rees46-recommend'
     data-recommender-block='dynamic'
     data-recommender-code='УНИКАЛЬНЫЙ_ИДЕНТИФИКАТОР_БЛОКА_РЕКОМЕНДАЦИЙ'>
</div>
<!-- /REES46: блок на странице 404 -->

# Персонализированный поиск

# Общие настройки

В личном кабинете REES46 на странице настроек товарного поиска в поле "Адрес страницы с результатами поиска" необходимо указать ссылку на соответствующую страницу сайта. Обычно эта страница имеет ссылку следующего вида:

https://my-store.com/search?q=%query%

Где:

  • my-store.com - это адрес сайта магазина
  • %query% - это строка поискового запроса

Иногда ссылка на страницу результатов поиска может иметь такой вид:

https://my-store.com/collection/all?q=%query%

Определившись с правильным форматом ссылки, просто скопируйте один из примеров выше в соответствующее поле настроек поиска, не забыв изменить адрес сайта на реальный.

Настройка поиска

Затем измените остальные параметры и тексты заголовков в соответствии с собственными предпочтениями.

Не забудьте сохранить изменения.

# Быстрый поиск

Быстрый поиск интегрируется в магазины InSales автоматически после сохранения настроек и включения инструмента в личном кабинете REES46.

Быстрый поиск

Пример виджета быстрого поиска.

Быстрый поиск

# Полный поиск

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

Чтобы воспользоваться полным поиском, необходимо в шаблон search.liquid вставить следующий код:

<div class='rees46-full-search-results' data-search-query='{{ search.query }}'></div>

Обратите внимание

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

# Синхронизация статусов заказов

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

Обратите внимание!

Если вы не изменяете статусы заказов в бэк-офисе вашего магазина в InSales (например используете для этого внешнюю CDP), то включение учёта статусов заказов в REES46 приведёт к нарушению работы триггерных писем, а также сделает статистику по заказам некорректной, так как все заказы будут иметь статус невыполненных.

# Как включить синхронизацию

Для активации учёта статусов заказов, в панели управления REES46 в разделе "Настройки" -> "Настройки InSales" включите настройку Забирать статусы заказов из InSales Настройка забирать статусы заказов из InSales

# Как включить синхронизацию, если работаем с вариантами товара

В панели управления REES46 в разделе "Настройки" -> "Настройки InSales" включите две настройки Забирать статусы заказов из InSales и Работать с вариантами товаров в InSales Настройка забирать статусы заказов из InSales с вариантами товара

# Как происходит синхронизация

Синхронизация происходит автоматически, при изменении статуса заказа в InSales данные по API передаются в REES46.

# Где отображается информация о реальных заказах

Подробнее об отчете о заказах читайте в отчёте о заказах.

# Профиль пользователя

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

Все доступные для передачи в REES46 поля профиля пользователя можно получить в этом документе (opens new window)

Для InSales можно использовать следующий код:

$(document).ready(function () {
  $.getJSON('/client_account/contacts.json', function (data) {
    if (data.status == 'error') return;
    let r46_data = {};
    if (typeof data.client.id != 'undefined' && data.client.id != null)
      r46_data.id = data.client.id;
    if (typeof data.client.email != 'undefined' && data.client.email != null)
      r46_data.email = data.client.email;
    if (typeof data.client.phone != 'undefined' && data.client.phone != null)
      r46_data.phone = data.client.phone;
    r46('profile', 'set', r46_data);
  });
});

Добавить код можно в панели управления REES46 в разделе "Общий контент" -> "Встраиваемые скрипты"

Быстрый поиск

# Проверка работоспособности

# Как выполнить проверку

  1. Включите консоль разработчика в вашем браузере.
  2. Выберите вкладку Network (или "Сеть"), в которой при обновлении страницы отображаются происходящие запросы.
  3. Включаете режим фильтрации только XHR-запросов.
  4. Проверяете, есть ли запросы, которые уходят на api.rees46.ru.

# Проверка отправки событий

  1. Откройте страницу карточки товара и убедитесь, что уходит PUSH-событие к API REES46.
  2. Добавьте товар в корзину и убедитесь, что уходит PUSH-событие к API REES46.
  3. Удалите товар из корзины и убедитесь, что уходит PUSH-событие к API REES46.
  4. Сделайте заказ товара и убедитесь, что уходит PUSH-событие к API REES46.

Проверка событий

# Проверка запроса рекомендаций

  1. Откройте страницу сайта, где установлены блоки и убедитесь, что к API REES46 уходит столько запросов, сколько установлено блоков рекомендаций.
  2. Осуществите поиск товара и убедитесь, что к API REES46 ушёл запрос на рекомендации при установленном блоке "Искавшие это также купили".

Проверка событий

# Если возникли проблемы

Рекомендации могут появиться не сразу – все зависит от посещаемости вашего сайта. Если на вашем сайте оформляются заказы, значит статистика собирается и скоро рекомендации начнут появляться. Но обязательно проверьте правильность установки.

Если что-то не получается

Обратите внимание, что если какой-то функционал (например, трекинг событий или отображение блоков рекомендаций) не работает даже в случае соблюдения всех инструкций документации, то скорее всего возникает конфликт с каким-то другим модулем или вы используете модифицированные шаблоны InSales. Пожалуйста, свяжитесь с нами по адресу desk@rees46.ru, и мы поможем вам разобраться с возникшей проблемой.