Конструктор шаблонов в модуле WP Shop YML

Документация по составлению шаблонов обработки контента из YML-каталогов

В данной статье мы описываем правила составления шаблонов для обработки партнерских каталогов в формате YML

Основным инструментом при переносе товарного контента из магазина-поставщика в магазин-партнер на WP Shop WordPress служит шаблон генерации товарных записей на основе YML-каталога магазина-поставщика. Общий принцип заключается в том, что поля оффера можно вставить в шаблон записи внутри скобок {xxx} как в контент записи, так и в дополнительные поля Custom Fields. Так же можно добавить свои статические параметры. Далее скрипт сгенерирует по заданному шаблону обычные записи WordPress с использованием данных из YML-каталога, создаст структуру рубрик и под-рубрик, установит связи между рубриками и записями, проставит цены и другие параметры.

Шаблон состоит из 3 основных блоков:

  1. Блок контента записи {post_content}
  2. Блок дополнительных полей записи {Custom Fields}
  3. Блок опций
Блок контента записи [post_content]
  • {description} — описание товара из оффера

Так же сюда можно ставить другие поля из оффера внутри скобок {}, любой статический текст, шорткоды других плагинов и т.д. Все это будет содержаться в тексте записи (товарной или обычной). Не рекомендуем ставить сюда JS скрипты, сложный HTML-код. Может сломать структуру шаблона и не сработать.

Блок дополнительных полей записи [Custom Fields]
  • <yml_postmeta> — начало блока доп.полей
  • [#cost#]name=cost_1;value=|{price}[#/cost#] — доп.поле cost_1 с ценой из оффера. Выводится на фронтенде, умножается на повышающий коэффициент fee (если задан, см.ниже)
  • [#oldprice#]name=old_price;value=|{oldprice}[#/oldprice#] — доп.поле old_price со «старой ценой» из оффера. Нужно для отображения скидки. Выводится на фронтенде, если нет в оффере то не создается. Работает только на темах производства студии WP Shop
  • [#similar#]name=similar_products;value=|1[#/similar#] — доп.поле similar_products со значением 1. Нужно для отображения «похожих товаров». Выводится внутри товара, берет товары из тега, если нет то из рубрики (корневого товара). Работает только на темах производства студии WP Shop
  • [#url#]name=part_url;value=|{url}[#/url#] — доп.поле part_url со значением URL товара на магазине-поставщике. Работает только на темах производства студии WP Shop
  • [#noindex#]name=_yoast_wpseo_meta-robots-noindex;value=|1[#/noindex#] — доп.поле _yoast_wpseo_meta-robots-noindex со значением 1. Работает только если включен плагин SEO Yoast. Запрещает индексирование контента Яндексом (для снятия риска писсимизации за плагиат контента и чтобы не передавать вес)
  • [#nofollow#]name=_yoast_wpseo_meta-robots-nofollow;value=|1[#/nofollow#] — доп.поле _yoast_wpseo_meta-robots-nofollow со значением 1. Работает только если включен плагин SEO Yoast. Запрещает индексирование Гуглом ссылок внутри записи (для снятия риска писсимизации за плагиат контента и чтобы не передавать PR)
  • [#noimageindex#]name=_yoast_wpseo_meta-robots-adv;value=|noimageindex[#/noimageindex#] — доп.поле _yoast_wpseo_meta-robots-adv со значением noimageindex. Работает только если включен плагин SEO Yoast. Запрещает индексирование картинок Гуглом (для снятия риска писсимизации за плагиат контента)
  • [#picture#]name=Thumbnail;value=|{picture}[#/picture#] — доп.поле Thumbnail с внешним URL первой картинки товара из оффера. Выводится на фронтенде. Удобен в случае ускорения парсинга за счет отключения импорта картинок. Работает только на темах производства студии WP Shop
  • </yml_postmeta> — конец блока доп.полей
Блок опций
  • <yml_options> — начало блока опций
  • fee=1.2; — наценка 20% от цены поставщика. Умножает значение доп.поля cost_1 на указанный коэффициент (в данном случае 1,2)
  • no_img=1; — отключение импорта картинок в локальную папку из оффера. Используется для ускорения импорта и снижения нагрузки на сервер хостинга, где лежит ваш сайт
  • params_in_desc=1; — опция кладет внутрь описания товара список параметров из блока param в оффере. param часто используется в YML для некоторых групп товаров: одежда, техника и многое другое.
  • template_title=name,typePrefix,vendor,model — конструкция заголовка товара. Указывается перечень полей оффера, которые нужно включить в наименование. Данная конструкция универсальна, позволяет построить правильный заголовок как при наличии в оффере поля <name> так и без него (что часто встречается)
  • </yml_options> — конец блока опций
  1. no_img=1; — отключение импорта файлов картинок в локальную папку из оффера. Используется для ускорения импорта и снижения нагрузки на сервер хостинга, где лежит ваш сайт
  2. params_in_desc=1; опция кладет внутрь описания товара список параметров из блока param в оффере. param часто используется в YML для некоторых групп товаров: одежда, техника и многое другое.
  3. cat_ar=1192,1208,1212; — определяет ID рубрик (1192,1208,1212 — указаны для примера), товары которых импортировать. Важная опция, с помощью которой можно разбивать большой YML-фид на части и грузить несколькими проектами, потому что обычные хостинги не могут переварить более 3000-4000 офферов в 1 фиде. Большие массивы обязательно надо делить на части с помощью данной опции. ID рубрик проще всего взять, открыв YML в обычном MS Excel
  4. fee=1.2; — возможность делать наценку к цене поставщика. Умножает значение доп.поля cost_1 на указанный коэффициент (в данном случае 1,2)
  5. template_title=name,typePrefix,vendor,model; — конструкция заголовка товара. Указывается перечень полей оффера, которые нужно включить в наименование

Администрация написал 154 Статьи