Skip to main content

Подготовка регионального фида

Общее

Функционал региональности позволяет получать локальную информацию о товарах (например цену и наличие), актуальную для конкретного региона (страны / города).

В свою очередь это позволяет:

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

Изменения YML для поддержки региональности

Для передачи специфичной для региона информации о товаре через yml необходимо в тег offer добавить блок stock. Пример:


<offer id="1039485" available="true">
    <price>100.00</price>
    <url>http://example.com/pathToProduct</url>
  <stock id="14"> К примеру, этот stock отвечает за Екатеринбург
    <available>true</available> Наличие товара в Екатеринбурге
    <price>200.00</price> Цена товара в Екатеринбурге
    <url>http://ekb.example.com/pathToProduct</url> Ссылка на товар на поддомене для Екатеринбурга
  </stock>
  <stock id="15"> К примеру, этот stock отвечает за Санкт-Петербург
    <available>false</available> Наличие товара в Санкт-Петербурге
    <price>250.00</price> Цена товара в Санкт-Петербурге
    <url>http://spb.example.com/pathToProduct</url> Ссылка на товар на поддомене для Санкт-Петербурга
  </stock>
</offer>

В данный момент каталог товаров поддерживает кастомизацию следующих атрибутов:

  • available
  • price
  • oldPrice
  • url
  • currencyId

Требования к описанию атрибутов региона:

  • каждый элемент offer обязательно должен содержать все стоки;
  • товары, у которых не указан ни один stock, должны быть не в наличии (available=”false”);
  • каждый элемент stock в рамках одного offer обязан иметь уникальные строковые идентификаторы, заданные атрибутом id;

Таким образом, при получении информации о товаре, привязанном к одному из объявленных регионов, данные о цене и наличии будут переопределены значениями элемента stock.

Передача stock id в локальное хранилище браузера

Кроме этого, на сайте необходимо создать ключ в локальном хранилище(localStorage) с именем _lh_stock_id и со значением, которое будет равно stock id в фиде.

То есть, если посетитель заходит на сайт ekb.example.com, а в фиде за Екатеринбург отвечает stock id со значением “2” то нужно, чтобы создавался ключ _lh_stock_id со значением “2”, в этом случае сервис будет использовать данные о товарах из фида ориентируясь на элемент stock, у которого stock id=”2”.