Yml и xml в чем разница
Корректный YML для Яндекс.Маркета. Взгляд программиста
Многие интернет-магазины попадают в Яндекс.Маркет, не все там остаются надолго. Одно из условий присутствия в ЯМ-е – наличие корректного прайса в специальном формате YML.
Проверка такого прайса на ошибки и устранение таковых – целая история. Пока он не будет сформирован по всем правилам – вход в сие царство демпинга заказан. А при доведении документа до ума можно пережить немало незабываемых эмоций.
Данная статья – попытка обобщить те ошибки, с которыми сталкиваются программисты, впервые создающие инструменты (будь то автономный скрипт или плагин для CMS) для генерации YML-файла. Тем, кто с этим чудным форматом имел дело раньше, статья уже будет не столь интересна, ибо всё шишки набиты. Впрочем, вдруг и ветераны борьбы за своё место под солнцем Яндекса узнают что-то новое для себя. А то и поделятся собственным фронтовым опытом.
Классификация ошибок
Неактуальные ошибки
Ошибки спецификации XML
Критичные ошибки YML
Теперь Ваш прайс – кошерный XML, но Яндекс наотрез отказывается его принимать. Разбираемся дальше.
Некритичные ошибки YML
Яндекс почти ублажен. Поработаем ещё немного.
– проверяйте наличие файла. Если картинка в наличии, но в названии есть злополучные пробелы – кодируйте ссылки в RFC3986 (функция rawurlencode Вам в помощь).
Прочие ошибки
ОК, все огрехи тотально устранены и скормленный Яндексу yml-прайс не выплёвывается обратно. Погодите расслабляться, через пару дней вполне может прийти «письмо счастья» от менеджеров ЯМ-а, в котором уведомляется, что:
По большому счёту, подобные ошибки вне компетенции кодеров. За них отвечают другие специально обученные люди – контент-менеджеры, SEO-шники, маркетологи или кого там ещё нагрузили следить за содержимым сайта. Впрочем, программисты иногда могут помочь и здесь. Например, фильтруя картинки-заглушки (определяя их по стандартным названиям) или не пропуская описания продукции, почему-то начинающиеся со слов «Lorem ipsum» и «bla bla bla».
Как и где проверять ошибки
Отлавливать все эти многочисленные ляпы проще всего в таком порядке.
YML-файл: зачем он нужен магазинам и как его создать
Руководство для тех, кто хочет продавать на Яндекс.Маркете
Маркетплейс (агрегатор товарных предложений от разных продавцов) — удобный ресурс для пользователя. На одной площадке собрано большое количество товаров, есть возможность изучить отзывы покупателей и сравнить цены.
Яндекс.Маркет — самый популярный российский маркетплейс с огромной аудиторией. Технически для попадания на его витрину требуется создать специальный прайс-лист в формате YML. Это файл с данными о всех товарах, которые вы планируете размещать на площадке. Составили подробную инструкцию, как подготовить этот файл и загрузить его в систему.
YML-файл: что это и зачем он нужен
У Яндекс.Маркета есть определенные требования к прайс-листам, их содержанию и формату. Для загрузки товаров можно использовать привычные форматы XLS (файл Excel) и CSV. Однако предпочтительнее создавать документ YML (Yandex Market Language) — собственную разработку Яндекса на базе стандарта XML.
Готовить прайс-лист в формате YML немного сложнее, чем в XLS или CSV. Однако он дает ряд преимуществ. Например, позволяет автоматизировать процесс обновления товарных позиций и их характеристик.
Вот как это работает:
Контекст на профессиональном уровне и без агентства — в системе PromoPult.
Автоматический подбор слов, автогенерация объявлений, «умное» управление ставками. Готовые отраслевые решения. Статистика в реальном времени. Для профессионалов — множество точных настроек.
Как выглядит YML-файл
Прайс-лист для Яндекс.Маркета состоит из общей информации о магазине и списка товарных предложений (офферов).
Шапка
В шапке YML-файла указана:
Вот так выглядит шапка в YML-файле (первые две строки):
Информация о магазине
Внутри элемента указана информация о магазине, оффере и другие данные:
В элемент вложены другие элементы:
Есть еще и дополнительные, необязательные элементы, входящие в : CMS и ее версия, название агентства, которое отвечает за техподдержку сайта, и другие. Подробнее о них читайте в соответствующем разделе Справки.
Оффер
Вот как выглядит часть YML-файла с одним товарным предложением ( ):
На этом скриншоте показан — одно товарное предложение (в данном случае мороженица). Маркет использует эти данные и создает карточку товара.
Элемент может быть упрощенного и произвольного типа. Разница — в названии товара:
Подробное описание формата — по ссылке.
Подробнее обо всех элементах YML-файлов можно почитать здесь.
Не все элементы обязательны к использованию. Для каждой категории товаров перечень обязательных и рекомендуемых элементов будет разным. У Яндекса есть готовые рекомендации по подготовке прайс-листов для разных категорий. Подробно описывать все их нет смысла — воспользуйтесь удобным рубрикатором Справки Яндекса.
Как создать YML-файл
Есть три основных способа создания YML-файлов:
Вручную
Это самый трудоемкий способ. Он подойдет интернет-магазинам, у которых не более 20-30 товарных предложений.
Можно попросить программиста написать скрипт для выгрузки товарных предложений в YML-файл. На GitHub есть готовые библиотеки, которыми можно воспользоваться для генерации YML-файлов. Например, вот эта.
Модули для CMS
Большинство популярных CMS могут экспортировать данные из интернет-магазинов в YML-файлы. У одних CMS есть встроенный функционал — файл можно сгенерировать прямо в административной панели сайта. В других случаях приходится использовать дополнительные модули/плагины.
Яндекс подсказывает, в каких CMS можно создать YML-файл
Полный список CMS, в которых можно создавать файл прайс-листа для Яндекс.Маркета, здесь.
С помощью софта
Можно воспользоваться программным обеспечением сторонних разработчиков, созданным специально для генерации YML-файлов.
Например, YML-генератор от Mysitemapgenerator.com. С ним можно:
Важно! Страницы товарных предложений (карточки товара) должны содержать разметку Schema.org Product или Open Graph Product. Детально микроразметку Schema.org мы разобрали здесь, Open Graph — тут. О добавлении разметки с помощью Google Tag Manager вы можете почитать в этой статье.
Как добавить прайс-лист на Яндекс.Маркет
После регистрации магазина на Маркете помимо указания необходимой информации о нем нужно добавить прайс-лист.
Делается это в разделе Ассортимент → Прайс-лист.
Добавление прайс-листа на Маркет
Добавить прайс можно тремя способами:
Способ 1. Разместить YML-файл на сайте вашего интернет-магазина (обычно — в корневой папке), а в личном кабинете Маркета добавить ссылку на него. Если доступ на сервер, где хранится файл, защищен, укажите логин и пароль.
Добавление ссылки на прайс-лист
После добавления файла нажмите кнопку «Проверить прайс-лист». Система проверит его, и если найдет ошибки, сообщит о них.
Проверка прайс-листа перед загрузкой на Маркет
После загрузки прайс появится в общем списке.
Список загруженных прайс-листов на Маркете
Способ 2. Загрузить YML-файл напрямую (размер не должен превышать 100 Мб). Для этого в окне загрузки выберите «Файл» и загрузите прайс с компьютера.
Загрузка YML-файла напрямую
Способ 3. Загрузка прайса с помощью макроса в Excel. Способ подходит, если вы составляли прайс в Excel. Он позволяет установить связь вашего файла в Excel с Яндекс.Маркетом и обновлять прайс автоматически после внесения изменений в исходный файл. Для использования этой функции нужно авторизоваться в Excel, используя полученный в Яндексе номер рекламной кампании и ключ. Подробно об этом способе — в справке Яндекса.
Загрузка прайса из Excel
Проверка YML на ошибки
После создания YML его стоит проверить на ошибки в валидаторе XML-фидов в Яндекс.Вебмастере (вот ссылка). Для этого выберите схему валидации документа (недвижимость, работа, видео, Маркет и другие) и источник XML-данных (файл, ссылка или текст).
Если вы не проверите YML-файл, в любом случае при добавлении его в Яндекс.Маркет сервис проверит его на ошибки и выдаст отчет.
Ошибки могут появиться как в случае создания YML-файла вручную, так и тогда, когда вы просто выгружали его с помощью модуля CMS.
Есть несколько классификаций ошибок, о которых сообщает Яндекс:
Подробнее об ошибках — здесь.
Обновление прайс-листа формата YML
Обновление прайс-листа необходимо для того, чтобы на карточках товарных предложений в Маркете всегда отображалась актуальная информация о:
Размещенный на Маркете прайс-лист нужно обновлять как минимум один раз в 30 дней, если вы загружали его в личном кабинете.
Если же YML-файл находится на сайте, нужно обновлять его каждый раз, как происходят изменения ключевых параметров (цена, количество товара и т.д.). Робот Яндекс.Маркета сам скачает обновленный файл при индексации.
Общая индексация Яндекс.Маркета проводится каждые 3-6 часов. За это время полностью обновляются все товарные предложения на Маркете. Измененные цены и скидки обновляются быстрее — 30-40 минут.
Удобнее всего настроить автоматическое обновление YML-файла на сайте. Тогда на Маркете всегда будет актуальная информация.
YML-файл полезен не только для Яндекс.Маркета, но и контекстной рекламы
Добавление магазина на Яндекс.Маркет — не единственная причина создать YML. Еще один вариант применения YML-файла — быстрое составление объявлений для контекстной рекламы. Для того чтобы в один клик получить объявления для каждого товара:
Объявления составляются для Яндекс.Директа и Google Ads и выглядят так:
Без автоматизации пришлось бы долго вручную перебирать все названия и цены товаров. Для интернет-магазинов с большим ассортиментом Генератор из YML — удобное решение. Вот исчерпывающий гайд по работе с Генератором из YML от PromoPult.
Если же вы хотите полностью избавиться от необходимости составлять объявления контекстной рекламы, попробуйте инструмент «Написание контекстных объявлений» от PromoPult. Вот инструкция по работе с ним.
Резюме
Размещение товарных предложений на Яндекс.Маркете дает ряд преимуществ:
Поэтому однозначно стоит воспользоваться этим инструментом. Стать участником маркетплейса несложно, к тому же это доступно даже малому бизнесу.
Следуя нашей инструкции, вы легко подготовите YML-файл.
И напоследок: позаботьтесь о должном качестве сайта, чтобы привлекаемый трафик не уходил из-за досадных ошибок.
Отличие xml и от yml
Многие интернет-магазины попадают в Яндекс.Маркет, не все там остаются надолго. Одно из условий присутствия в ЯМ-е — наличие корректного прайса в специальном формате YML.
Проверка такого прайса на ошибки и устранение таковых — целая история. Пока он не будет сформирован по всем правилам — вход в сие царство демпинга заказан. А при доведении документа до ума можно пережить немало незабываемых эмоций.
Данная статья — попытка обобщить те ошибки, с которыми сталкиваются программисты, впервые создающие инструменты (будь то автономный скрипт или плагин для CMS) для генерации YML-файла. Тем, кто с этим чудным форматом имел дело раньше, статья уже будет не столь интересна, ибо всё шишки набиты. Впрочем, вдруг и ветераны борьбы за своё место под солнцем Яндекса узнают что-то новое для себя. А то и поделятся собственным фронтовым опытом.
Неактуальные ошибки
Все остальные грабли лежат всё там же.
Ошибки спецификации XML
Критичные ошибки YML
Теперь Ваш прайс — кошерный XML, но Яндекс наотрез отказывается его принимать. Разбираемся дальше.
С перепугу можно решить, что ошибок в 2 раза больше, чем на самом деле. И если с дубликатами всё понятно, то непосвящённым ещё предстоит догадаться чем именно некорректны некорректные идентификаторы.
Некритичные ошибки YML
Яндекс почти ублажен. Поработаем ещё немного.
— проверяйте наличие файла. Если картинка в наличии, но в названии есть злополучные пробелы — кодируйте ссылки в RFC3986 (функция rawurlencode Вам в помощь).
Прочие ошибки
ОК, все огрехи тотально устранены и скормленный Яндексу yml-прайс не выплёвывается обратно. Погодите расслабляться, через пару дней вполне может прийти «письмо счастья» от менеджеров ЯМ-а, в котором уведомляется, что:
А посему Ваша лавочка пока отстранена от присутствия в торговой вселенной Яндекс.Маркета на срок от недели до навсегда.
По большому счёту, подобные ошибки вне компетенции кодеров. За них отвечают другие специально обученные люди — контент-менеджеры, SEO-шники, маркетологи или кого там ещё нагрузили следить за содержимым сайта. Впрочем, программисты иногда могут помочь и здесь. Например, фильтруя картинки-заглушки (определяя их по стандартным названиям) или не пропуская описания продукции, почему-то начинающиеся со слов «Lorem ipsum» и «bla bla bla».
Отлавливать все эти многочисленные ляпы проще всего в таком порядке.
Официальная спецификация YML
Требования к методу передачи данных
Требования к рекламным материалам
Яндекс.Маркет — to be or not?
Размещение товаров на Яндекс.Маркете. Типичные проблемы и их решение
Ночное ворчание о Яндексе, Маркете и интерфейсах вообще
Только зарегистрированные пользователи могут участвовать в опросе. Войдите, пожалуйста.
Приходилось ли вам с нуля писать скрипты/плагины для генерации YML?
34.27% Да, особых затруднений никогда не было 49
23.78% Да, когда настраивал первый раз — проклял всё на свете 34
41.96% Нет, не приходилось 60
Проголосовали 143 пользователя. Воздержались 30 пользователей.
Форматы YML и CSV
Стандарт YML (Yandex Market Language) разработан Яндексом и основан на стандарте XML. Формат YML предоставляет больше возможностей и преимуществ, чем форматы XLS, CSV.
В YML нельзя использовать:
непечатаемые символы с ASCII-кодами от 0 до 31 (за исключением символов с кодами 9, 10, 13 — табуляция, перевод строки, возврат каретки);
эмодзи и другие специальные символы Юникода.
Символы » & > BestSeller Tne Best inc. https://best.seller.ru Бытовая техника Мелкая техника для кухни Мороженица Brand 3811 https://best.seller.ru/product_page.asp?pid=12345
Элемент | Описание |
---|---|
xml er |