7 ноября 2017 года. Опубликовано в разделах: Азбука терминов. 7243
YML-файл – специализированный формат, разрешающий размещение контента в интернет-магазинах Яндекса. Информация автоматически обновляется и отражает все актуальные изменения по цене и наличию товаров. Формат основан на XML, но с большими преимуществами и возможностями. Его использование способствует получению дополнительного релевантного трафика для площадок.
Что значит формат YML
Формат позволяет обрабатывать информацию для размещения в интернет-магазине. Он позволяет постоянно обновлять данные о товаре, его характеристики.
После обновления выгрузка контента стала бесплатной – это актуально. Страницы выглядят привлекательней с виджетом в основном поиске. Цена теперь видна сразу. То есть, при вводе искомого названия в поисковике появляется и вещь, и ее цена. Конверсия растет в том случае, если сайт находится на 5 первых позициях.
Как сделать формат yml для маркета
Чтобы создать файл, используйте систему InstantCMS с дополнительным модулем InstantShop. Он используется при создании интернет-магазинов.
Прайс-лист должен быть в Excel таблицах, так как это удобно для автоматической конвертации данных магазина. На каждом листе имеется отдельная информация для создания.
- Товар помещается между тегами … . Карточка и id необходимы для его идентификации.
- Ссылка на необходимую вещь заключена между тегами … .
- Теги
обозначает ценовые рамки.
.
Для преобразования можно не использовать ссылки:
Чтобы получить необходимые недостающие данные, нужно поработать с формулами Excel. Это производится в несколько этапов:
- создается ссылка на контент;
- добавляется его категория;
- фиксируется ссылка на фото.
Для создания xls-файла интернет-магазина необходимо владеть знаниями по Excel и работе с формулами. После проделанной работы достаточно сконвертировать xls формат в yml. Он дополняется заголовками и всеми атрибутами, конвертируется в формат, удобный для работы Яндекс.Маркета.
Yml-файл для Маркета: как его залить
Преимущество yml файла в том, что он актуален для интернет-магазина с большим ассортиментом товаров. Чтобы избежать обновлений вручную, используйте автоматический экспорт, заложенный в возможностях таких файлов. Это достаточно удобно. Благодаря своим функциям и возможностям он просто заливается на Маркет.
Вот, что пишет по поводу процесса сам Яндекс:
Составление прайс-листа в Excel способствует упорядочению и дальнейшему удобству формирования размещения контента в сети.
Прописывание атрибутов расширяет возможности. Особую важность это играет при формировании нескольких видов доставок.
Заливка предварительно подготовленного файла происходит в несколько этапов.
- зайти в раздел «Ассортимент».
- выбрать пункт меню «Прайс-лист».
- выполнить проверку на наличие ошибок.
- обновить и сохранить в Маркете.
- добавить все необходимые прайс-листы.
Проверка производится посредством введения url-адреса и его импортирования.
Как проверить yml файл для Яндекс.Маркета
Проверка выполняется в несколько этапов:
- загрузка прайс-листа;
- выбор опции «Указать ссылку»;
- ввод УРЛ адреса;
- импортирование.
Проверка необходима для выявления ошибок, недочетов. Результаты проверки предоставляются в течение нескольких минут. Могут быть представлены ошибки:
- критичные;
- общие;
- при составлении предложений.
Результат проверки выглядит следующим образом:
Сайт может предложить рекомендации по улучшению прайс-листа для повышения эффективности увеличения кликабельности на товар в Маркете. Последнее слово всегда за Яндексом, поэтому следует проводить проверки именно в их валидаторе для устранения выдаваемых ошибок. Отчеты сохраняются в csv.
Генератор yml файла для Маркета способствует восстановлению и выгрузке на компьютер резервных копий базы магазина. Немаловажно, что файлы не принимаются из сторонних доменов. Они значительно облегчают работу магазинов, так как остается отредактировать и дополнить прайс-лист информацией.
– Широкая семантика.
– Высокий CTR.
– Тщательная минусовка.
– Только целевые заходы.
Загрузите в trimpo список моделей вашего магазина, которые планируется выставлять на продажу на торговой площадке.
Trimpo может получать информацию по моделям из yml или excel-файлов, а также их можно добавлять вручную.
YML-файл.
Это формат, разработанный Яндексом для передачи в XML информации по вашим моделям. Узнать больше о нем можно на yandex.market.
YML(Yandex Market Language) — это формат, разработанный Яндексом для передачи в XML информации по вашим моделям. Подробнее про этот формат можно прочитать на yandex.market.
Как получить YML-файл?
Если вы используете одну из промышленных CMS-систем, таких как In_sales, Bitrix, Shop-Script, WordPress и т.п., то, скорее всего, вы уже располагаете готовыми модулями или разделами в системе, которые позволят вам настроить правила формирования YML-файла с вашими моделями.
Если вы не нашли такого раздела или модуля в вашей CMS-системе, обратитесь к поставщику решения или попробуйте поискать в интернете как сформировать yml файл в вашей системе.
Как проверить мой YML-файл?
Для проверки вашего YML-файла вы можете воспользоватся специальным сервисом: https://webmaster.yandex.ru/xsdtest.xml
Какие поля YML-файла обязательно должны быть заполнены?
Пример модели, упрощенное описание:
Также название модели можно передать в виде vendor.model
Например:
В этом случае название модели будет сформировано как typePrefix + vendor + model.
Получаем название «Наручные часы Diesel DZ1090».
Какие дополнительные теги моделей поддерживает система Trimpo?
Остаток моделей — для того чтобы указать остаток ваших моделей, необходимо использовать тег , в котором нужно указать количество моделей, доступных к продаже. Пример:
Если тег stock модели не передан, то система автоматически определит сток = 1 в случае, если состояние модели available = true (модель в наличии). Если же состояние модели available = false (модель не в наличии), система поставит сток = 0.
Состояние модели — для того чтобы указать состояние вашей модели, необходимо использовать тег .
Если тег condition модели не передан, то система автоматически присвоит ему значение «Новый» (New).
Полный список возможных значений тега condition http://developer.ebay.com/devzone/finding/callref/Enums/conditionIdList.html
Мы рекомендуем использовать один из двух — New или Used.
Как передать полное описание модели с форматированием?
Для того чтобы в теге description модели передать описание модели с форматированием, используйте тег CDATA.
Внутри […] вы можете передать html-теги для форматирования описания, при этом использовать JS и iframe запрещено. Подробнее про ограничения можно прочитать тут: http://pages.ebay.com/help/policies/listing-javascript.html
Как вставить видео с YouTube в описание товара?
YouTube использует тег iframe для вставки видео на различные сайты. Однако на eBay этот тег не используется, поэтому, если вы хотите вставить видео в описание своего товара, воспользуйтесь простым в использовании кодом:
*Просто замените XXXXXXXXXXX на 11-значный код вашего YouTube-видео, и тогда все получится. Код можно найти в ссылке на видео, в нашем примере он выделен жирным: http://www.youtube.com/watch?v=2aaaE5EtcLc
Как передать модель с товарами разных свойств?
Например, вы хотите передать футболку, которая доступна в двух цветах и трех размерах. Это 5 товаров.
- Белая — М
- Белая — S
- Черная — М
- Черная — S
- Черная — L
Для того чтобы передать разные товары, которые относятся к одной модели, необходимо использовать тег group_id. Подробнее о нем можно прочитать на yandex.market.
Ниже приведен пример оформления yml-файла для этих пяти футболок.
Первый товар: Футболка, Белая, размер — М
Второй товар: Футболка, Белая, размер — S
Третий товар: Футболка, Черная, размер — М
Четвертый товар: Футболка, Черная, размер — S
Пятый товар: Футболка, Черная, размер — L
Excel
Как источник данных о моделях Excel — это очень простой формат. Он подойдет, если у вас есть 100 или менее моделей, и вы часто меняете их цену или остаток. Этот тип источника данных позволяет за один раз обновить все ваши модели.
Столбцы Excel-файла
- Id — идентификатор вашего товара. Товар, который был загружен в систему, не должен менять свой id. В противном случае будет создан новый товар, а старый будет снята с продажив
- Currency — валюта модели;
- Price — цена модели;
- Stock — количество моделей;
- Category — категория модели. Рекомендуем использовать это поле, так как по нему можно фильтровать модели внутри системы Trimpo;
- Picture — ссылки (URL) на ваши изображения. Для того чтобы добавить несколько изображений к модели, используйте разделительный символ «;» между ссылками на изображения (см. пример в шаблоне);
- Brand — бренд вашей модели. Обязательно указывайте эту информацию, если располагаете ей;
- Name — название модели;
- Description — описание модели. Используйте максимально подробное описание модели. Обратите внимание: в описании можно передавать форматированное описание с html-тегами (создайте описание модели в word и сохраните его как html);
- Specifics — свойства моделей. Необходимо указать строго в следующем формате: свойство_1: значение ; свойство_2 : значение. Смотрите пример указания свойств в шаблоне;
- Сondition (New/Used) — состояние модели. Возможно использование двух значений — New или Used. Если вы указали Used (бывшая в употреблении), то в описании модели обязательно укажите в каком состоянии модель, перечислите дефекты и укажите другую релевантную информацию;
group_id — идентификатор модели. Его необходимо использовать для создания моделей с вариантами, например, товары одной модели, которые отличаются цветом и/или размером. Идентификатор модели должен быть уникальным для всего excel-файла и не должен меняться.
Добавление модели вручную
Как следует из названия, этот способ предусматривает ручное создание и добавление каждой модели. Очевидно, этот способ лучше всего подойдет магазинам с небольшим количеством моделей.
Источник «Ручное добавление моделей» позволяет добавлять информацию о каждой модели отдельно. По клику на кнопку «Добавить модель» trimpo открывает стандартную форму с полями для ручного заполнения.
Все поля формы обязательны для заполнения, кроме того, необходимо добавить как минимум одну фотографию модели.
Укажите «Название модели», а затем – состояние (новая или б.у.). После этого можно выбирать товарную категорию.
Меню товарных категорий находится в правой части экрана добавления модели.
После выбора категории trimpo предложит заполнить список свойств модели, который может меняться в зависимости от выбранной категории.
Например, для книг актуальны такие свойства:
Вы также можете добавить любые другие уникальные свойства модели, кликнув по кнопке «Добавить свойство».
После окончания заполнения свойств необходимо загрузить как минимум одно изображение модели и подробно заполнить поле «Описание модели».
Теперь вы можете назначить цену на модель и указать ее остаток. Модель успешно создана.
Многие интернет-магазины попадают в Яндекс.Маркет, не все там остаются надолго. Одно из условий присутствия в ЯМ-е – наличие корректного прайса в специальном формате YML.
Проверка такого прайса на ошибки и устранение таковых – целая история. Пока он не будет сформирован по всем правилам – вход в сие царство демпинга заказан. А при доведении документа до ума можно пережить немало незабываемых эмоций.
Данная статья – попытка обобщить те ошибки, с которыми сталкиваются программисты, впервые создающие инструменты (будь то автономный скрипт или плагин для CMS) для генерации YML-файла. Тем, кто с этим чудным форматом имел дело раньше, статья уже будет не столь интересна, ибо всё шишки набиты. Впрочем, вдруг и ветераны борьбы за своё место под солнцем Яндекса узнают что-то новое для себя. А то и поделятся собственным фронтовым опытом.
Неактуальные ошибки
- Не та кодировка. Первое обо что спотыкались в старые добрые времена. Большинство движков работают на UTF-8, а ЯМ когда-то требовал только любимую кодировку Windows. Поговаривают, что капризного Яшу можно было объегорить – сделать вид, что согласны на богомерзкую cp1251 при утверждении магазина, после того как «таможня даёт добро» – преспокойно заменить прайс на расово верный Юникод. Что интересно – CSV (как нежелательную альтернативу YML) Яндекс.Маркет принимает исключительно в UTF-8 🙂
Все остальные грабли лежат всё там же.
Ошибки спецификации XML
YML – это частный случай XML. А значит, должен соответствовать его основным правилам. Не забываем об обязательном наличии и , следим за правильной вложенностью тегов, заменяем «великолепную пятёрку» (", &, , например) функцию htmlspecialchars, следует учесть, что там уже могут мнемоники изначально присутствовать 😉
Критичные ошибки YML
Теперь Ваш прайс – кошерный XML, но Яндекс наотрез отказывается его принимать. Разбираемся дальше.
- Ошибки в использовании элементов. Перечитываем 3 раза (а ещё лучше — 5) внимательно официальную документацию, не забываем про глобальные теги ( , ), следим за правильным написанием названий, не занимаемся отсебятиной в виде придумывания несуществующих в спецификации тегов, всю иерархию расставляем по yml-скому фен-шую, указываем правильно параметры и т.д.
Отсутствие обязательных элементов. Самые частые ошибки новичков и не очень новичков. Особенно часто такое всплывает при формировании offer-ов. Необязательный тег для одного вида описаний может оказаться обязательным для другого. К примеру, . На такое можно напороться, если раньше к продукции применялось упрощённое описание, а потом вдруг решили переделать на vendor.model.
Не каноничный порядок элементов. Очень подлая ошибка, прям-таки удар под дых для тех, кто с ней сталкивается впервые. Ситуация, когда Яндекс невозмутимо настаивает, что в строке такой-то позиция такая-то что-то не так, а в указанном месте ничего подозрительного и в упор не видно (причём, гугление форумов и медитация на офдокументацию эффекта не даёт) – способна довести любого до белого каления.
А ларчик просто открывается – элементы должны идти именно в том порядке, в котором они перечислены в спецификации. Вот в упрощённом описании сначала название товара, а потом производитель. А в vendor.model сначала производитель, а потом название товара. И ни в коем разе не наоборот.
Повторы продукции по ID. Что умиляет, ошибка эта Яндексом выдаётся сразу двумя разными способами (чтобы никто не запутался) – сначала перечисляются элементы с некорректными идентификаторами, а потом идёт список предложений-дубликатов.
С перепугу можно решить, что ошибок в 2 раза больше, чем на самом деле. И если с дубликатами всё понятно, то непосвящённым ещё предстоит догадаться чем именно некорректны некорректные идентификаторы.
Некритичные ошибки YML
Яндекс почти ублажен. Поработаем ещё немного.
- Некорректные URL. Часто это ссылки, например, содержащие пробельные символы или русские буквы. Вообще, во многих движках в таблицах БД обычно есть поля, хранящие прямые линки на страницы продукции. Что характерно, почти во всех CMS среди этих ссылок очень много мусора и поэтому обычно приходится генерировать самому.
Цена равна 0. Здесь программисту нужно посовещаться с контент-менеджером. Или фильтровать нулевые цены, но тогда о товарах, где забыли указать стоимость, вспомнят нескоро. Или не фильтровать и пускай в будущем контент-менеджер с претензиями Яндекса сам разбирается.
Неверные ссылки на картинки. Ну, тут примерно та же история, что и с неправильными URL. Прописанных в базе данных картинок часто не существует в природе. Прежде чем оформлять очередной
– проверяйте наличие файла. Если картинка в наличии, но в названии есть злополучные пробелы – кодируйте ссылки в RFC3986 (функция rawurlencode Вам в помощь).
Прочие ошибки
ОК, все огрехи тотально устранены и скормленный Яндексу yml-прайс не выплёвывается обратно. Погодите расслабляться, через пару дней вполне может прийти «письмо счастья» от менеджеров ЯМ-а, в котором уведомляется, что:
- Товарный ряд сплагиачен из другого магазина. Особо тяжкое преступление, караемое по всей строгости закона.
- В вашем прайсе мы упорно искали и таки нашли дубликаты!
- И кстати, некоторые ссылки ведут не туда.
- Какой идиот создавал эту категоризацию?
- В качестве фото продукции используются заглушки.
- Одни и те же фото у разных товаров. Ну и что с того, что на официальном сайте производителя то же самое?
- А некоторые картинки вообще не с Вашего сайта.
- В мутных водах элементов плавает «рыба».
- В магазине 100% предоплата, но почему об этом ни гу-гу в теле необязательного элемента ?
- Ах, у Вас из 500 товаров есть всего один «под заказ»? А почему у него aviable=’true’, а не ‘false’?
- У вас, уважаемые, доставка 3 дня, а по нашим понятиям товар считается «доступным» если доставляется в течении 2-х.
- … и всякое-такое прочее.
А посему Ваша лавочка пока отстранена от присутствия в торговой вселенной Яндекс.Маркета на срок от недели до навсегда.
По большому счёту, подобные ошибки вне компетенции кодеров. За них отвечают другие специально обученные люди – контент-менеджеры, SEO-шники, маркетологи или кого там ещё нагрузили следить за содержимым сайта. Впрочем, программисты иногда могут помочь и здесь. Например, фильтруя картинки-заглушки (определяя их по стандартным названиям) или не пропуская описания продукции, почему-то начинающиеся со слов «Lorem ipsum» и «bla bla bla».
Отлавливать все эти многочисленные ляпы проще всего в таком порядке.
- Ошибки XML. Хозяюшке на заметку – дублируйте yml-файлы с расширением xml, по крайней мере в период тестирования (да и потом может пригодиться). В браузерах и текстовых редакторах yml-документы открываются как унылые текстовики, что делает их неудобными для просмотра и анализа. В дебрях XML ориентироваться намного проще: там всегда весёленькая подсветка тегов + элементы можно «схлопнуть» в соответствии с их иерархической структурой + браузер услужливо подскажет где несоответствия спецификации. В общем, отследить ошибки YML проще, открыв его как XML.
Проверка в Яндекс-Маркете. Ну, и последнее слово – за Яндексом. Зарегистрировав магазин, проверяйте файл в ихнем валидаторе и устраняйте выдаваемые ошибки до победного конца.
Яндекс:
Хабрахабр:
Только зарегистрированные пользователи могут участвовать в опросе. Войдите, пожалуйста.