Фид данных должен иметь формат YML. Стандарт YML, Yandex Market Language, разработан Яндексом и основан на стандарте XML.
Общие требования к YML-файлу
- В файле не должно быть непечатаемых символов с ASCII-кодами от 0 до 31 — кроме 9, 10 и 13 — это табуляция, перевод строки и возврат каретки.
- Допустимые кодировки файла — UTF-8 и Windows-1251.
- В одном из полей фида обязательно должно быть название товара. Обычно название содержится в теге <name>, но лингвогенератор сможет выделить его из других тегов.
- Оптимальный объем фида для работы лингвогенератора — до 100 000 товаров. Если их больше, такой фид можно использовать, но при этом нужно создать несколько проектов по разным категориям. Для этого отфильтруйте их на 3 шаге настройки.
Общая структура YML-файла
<?xml version="1.0&" encoding="UTF-8&"?>
<yml_catalog date="2017−02−05 17:22">
<shop>
…
<offers>
<offer …>
…
</offer>
<offer…> …
</offers>
</shop>
</yml_catalog>
1. Между тегами <shop> и <offers> должно располагаться дерево категорий
Это обязательное условие. Каждый товар должен ссылаться на одну из категорий, перечисленных в таком дереве. Если у какого-то товара не указана категория, по нему генерации не будет.
Например:
<categories>
<category id="1 153 308">Одежда</category>
<category id="1 153 309" parentId="1 153 308">Женская одежда</category>
<category id="1 165 442" parentId="1 153 308">Детская одежда</category>
<category id="1 153 311" parentId="1 165 442">Одежда для девочек</category>
<category id="1 153 312" parentId="1 165 442">Одежда для мальчиков</category>
<category id="1 153 313" parentId="1 165 442">Одежда для новорожденных</category>
<category id="1 153 310&" parentId="1 153 308">Мужская одежда</category>
</categories>
2. В тегах <offers></offers> размещаются все предложения компании
Каждый отдельный товар или услуга описываются между тегами <offer></offer>.
Информация о товаре/услуге
Тег <offer> обязательно должен содержать атрибут id: <offer id="33 433 148">.
Атрибут available необязателен. Он указывает на наличие товара или доступность услуги — <offer available="true">.
При генерации этот тег не учитывается, в обработку берутся все товары, которые есть в фиде.
При экспорте и обновлениях, которые происходят каждый час, товары с available="false", как и отсутствующие товары, снимаются с показов.
Тип товара — обычно <model> или <typePrefix>
Настоятельно рекомендуемый: без него семантика может быть неполной.
Если нет тега <model>, но указан <param name=«Тип»>, то тип товара будет подтягиваться из этого тега.
Ссылка на товар — обычно <url>
Обязателен: если его нет, то появится ошибка в интерфейсе.
Цена — обычно <price>
Рекомендован, но опционален. Если его нет, то в рекламных объявлениях не будет указываться цена.
Пример: <price>149</price>
Цены указываются только в рублях.
Товарная категория — <categoryId>
Обязателен.
Категория в товаре должна находиться в шапке категорий в фиде, иначе инструмент не сможет обработать такой товар.
Если категория у товара не указана или тег пустой — <categoryId></categoryId>, инструмент не обработает товар.
Если категорий для товара указано несколько, будет выбрана только одна — первая указанная.
Пример: <categoryId>1 179 438</categoryId>
Ссылка на изображение — обычно <picture>
Обязательно, если вам нужны объявления с изображениями.
Если тега нет, лингвогенератор не будет добавлять картинки к рекламным объявлениям.
лингвогенератор сам проверяет изображения на соответствия требованиям Яндекса. Если картинка невалидна, она не будет добавлена к рекламному объявлению.
Краткая информация о товаре — обычно <name>
Обязательный, если название товара содержится только в этом теге.
Лучше всего, когда тип товара идет в начале тега name, а доп.информация разделена запятыми или любыми другими знаками препинания.
Названия — например, название книги «Дети капитана Гранта» — лучше указывать в кавычках « », чтобы лингвогенератор не разделил их на отдельные слова, и не стал рекламировать отдельно детей и гранты.
Производитель — обычно <vendor>
Обязателен, если вам нужна семантика с производителем.
Неструктурированное описание товара — обычно <description>
Опционален, но семантика будет более полной, если его указать.
Рекомендуем не выбирать тег в настройках лингвогенератора, если описание не связано с тематикой товара. Например, если товар — бумажная модель танка, а в описании — пространные сведения о Второй мировой. В таком случае и семантика будет скорее не о товаре, а о войне.
Дополнительная информация о товаре — <param>
Расширяет семантику. Можно указать ее для обработки лингвогенератором на шаге № 2 «Обработка полей YML», нажав на кнопку «+Добавить дополнительные поля».