Экспорт в YML (vendor.model)

Материал из Umicms
Версия от 22:08, 26 февраля 2010; VITL' (обсуждение | вклад) (Новая страница: «'''Задача:''' Произвести экспорт в формат ЯндексМаркет (YML) с присутствием таких полей как: vend…»)
(разн.) ← Предыдущая | Текущая версия (разн.) | Следующая → (разн.)
Перейти к:навигация, поиск

Задача: Произвести экспорт в формат ЯндексМаркет (YML) с присутствием таких полей как: vendor (производитель), vendorCode (код товара по классификации производителя), model (модель товара), price (цена).

Необходимые действия: Чтобы на страницах объекта каталога присутствовали данные поля, в «Шаблоне данных» необходимо добавить нужные поля и произвести корректировку файла ~xsl/dump2yml.xsl. В xsl присутствует такой блок:

<!-- vendor.model -->
<xsl:variable name="typePrefix">typePrefiks</xsl:variable>
<xsl:variable name="vendor">proizvoditel</xsl:variable>
<xsl:variable name="model">model</xsl:variable>

К примеру, необходимо чтобы значение proizvoditel совпадало с идентификатором поля Производитель, если у вас он прописан как vendor (в Шаблоне данных), то необходимо proizvoditel изменить на vendor. В блок vendor.model добавляем новую строку для vendorCode:

<xsl:variable name="vendorCode">vendorcode</xsl:variable>

И далее после строк:

<vendor><xsl:value-of select=".//property[name = $vendor]//value"/></vendor>
<model><xsl:value-of select=".//property[name = $model]//value"/></model>		

Добавляем:

<xsl:if test=".//property[name = $vendorCode]//value != ''">
<vendorCode><xsl:value-of select=".//property[name = $vendorCode]//value"/></vendorCode>
</xsl:if>

Чтобы экспортировались все поля, они должны быть заполнены.