Документация по составлению шаблонов обработки контента из YML-каталогов
В данной статье мы описываем правила составления шаблонов для обработки партнерских каталогов в формате YML
Основным инструментом при переносе товарного контента из магазина-поставщика в магазин-партнер на WP Shop WordPress служит шаблон генерации товарных записей на основе YML-каталога магазина-поставщика. Общий принцип заключается в том, что поля оффера можно вставить в шаблон записи внутри скобок {xxx} как в контент записи, так и в дополнительные поля Custom Fields. Так же можно добавить свои статические параметры. Далее скрипт сгенерирует по заданному шаблону обычные записи WordPress с использованием данных из YML-каталога, создаст структуру рубрик и под-рубрик, установит связи между рубриками и записями, проставит цены и другие параметры.
- Блок контента записи {post_content}
- Блок дополнительных полей записи {Custom Fields}
- Блок опций
Базовый шаблон парсера
{description} <yml_postmeta> [#price#]name=cost_1;value=|{price}[#/price#] [#oldprice#]name=old_price;value=|{oldprice}[#/oldprice#] [#url#]name=part_url;value=|{url}[#/url#] [#similar#]name=similar_products;value=|1[#/similar#] [#noindex#]name=_yoast_wpseo_meta-robots-noindex;value=|1[#/noindex#] [#nofollow#]name=_yoast_wpseo_meta-robots-nofollow;value=|1[#/nofollow#] [#noimageindex#]name=_yoast_wpseo_meta-robots-adv;value=|noimageindex[#/noimageindex#] [#picture#]name=Thumbnail;value=|{picture}[#/picture#] </yml_postmeta> <yml_options>no_img=1;params_in_desc=1;template_title=name,typePrefix,vendor,model</yml_options>
Все доступные опции шаблон парсера
- no_img=1; — отключение импорта файлов картинок в локальную папку из оффера. Используется для ускорения импорта и снижения нагрузки на сервер хостинга, где лежит ваш сайт
- params_in_desc=1; опция кладет внутрь описания товара список параметров из блока param в оффере. param часто используется в YML для некоторых групп товаров: одежда, техника и многое другое.
- cat_ar=1192,1208,1212; — определяет ID рубрик (1192,1208,1212 — указаны для примера), товары которых импортировать. Важная опция, с помощью которой можно разбивать большой YML-фид на части и грузить несколькими проектами, потому что обычные хостинги не могут переварить более 3000-4000 офферов в 1 фиде. Большие массивы обязательно надо делить на части с помощью данной опции. ID рубрик проще всего взять, открыв YML в обычном MS Excel
- fee=1.2; — возможность делать наценку к цене поставщика. Умножает значение доп.поля cost_1 на указанный коэффициент (в данном случае 1,2)
- template_title=name,typePrefix,vendor,model; — конструкция заголовка товара. Указывается перечень полей оффера, которые нужно включить в наименование
- id_as_field=1; — пишет в доп.поле prod_id идентификатор оффера offer id. Опция используется для работы с API поставщиков для передачи туда данных о заказанном товаре.
- project_as_field=1; — пишет в доп.поле project_id номер проекта. Опция используется для работы с API поставщиков
- fields_update=old_price,new; — в опции задаются имена доп.полей, которые требуется обновлять при запуске синхронизации каталога с поставщиком.
Пример оффера в YML сайта-поставщика
<offer id="24086748" available="true" group_id="31218056"> <url>http://www.ozon.ru/context/detail/id/24086748/?from=wpshop</url> <price>32384</price> <oldprice>34384</oldprice> <currencyid>RUR</currencyid> <categoryid>1178973</categoryid> <picture>http://static.ozone.ru/multimedia/spare_covers/1012094012.jpg</picture> <picture>http://static.ozone.ru/multimedia/spare_other/1011485421.jpg</picture> <picture>http://static.ozone.ru/multimedia/spare_other/1011485422.jpg</picture> <delivery>true</delivery> <ordering>На складе</ordering> <name>Apple iPad mini with Retina display Wi-Fi + Cellular 16GB, Space Gray</name> <vendor>Apple</vendor> <vendorcode>ME800RU/A</vendorcode> <description> Мощный процессор A57 Процессор A7 имеет 64-разрядную архитектуру класса настольных компьютеров и отличается от предыдущих поколений передовыми графическими возможностями и улучшенной обработкой сигнала изображения. Благодаря четырехкратному приросту производительности центрального и восьмикратному графического процессоров на iPad mini с дисплеем Retina любые задачи выполняются быстрее и эффективнее - от загрузки приложений и редактирования фотографий до игр со сложной графикой, при этом заряда аккумулятора по-прежнему хватает на весь день. Процессор А7 с 64-битной архитектурой и поддержкой OpenGL ES версии 3.0 обеспечивает визуальные эффекты на уровне игровой консоли. Кроме того, iPad mini оснащен сопроцессором движения M7, который собирает данные с датчика ускорения, гироскопа и компаса, чтобы разгрузить процессор A7 и повысить энергоэффективность. Дисплей идеального размера с подсветкой LED. На дисплее Retina нового iPad mini... </description> <barcode>0885909896936</barcode> <param name="Цвет">темно-серый <param name="Комплектация">Адаптер питания, Кабель Lightning-USB <param name="Размеры, мм">200 х 134.7 х 7.5 <param name="Размер упаковки (ДхШхВ), см">21 x 14.5 x 5.5 <param name="Вес, г">300 <param name="Гарантия">12 мес. <param name="Год выпуска">2013 <param name="Страна-изготовитель">Китай <param name="Страна бренда">США <param name="Тип">Планшет <param name="Диагональ">7.9" </offer>