Как импортировать в WinShop XML-файл произвольной структуры

XML-документы

Настройки импорта произвольных XML-файлов

Дополнительные возможности окна «Поле импорта»

 

Приложение WinShop предоставляет контент-менеджерам интернет-магазинов возможность:

  1. добавления и обновления информации о товарах;
  2. обновления цен на товары;

из прайс-листов поставщиков, предоставляемых в формате XML-файлов произвольной структуры, размещенных как в сети интернет, так и на локальном компьютере.

XML-документы

XML (от английского eXtensible Markup Language) — расширяемый язык разметки.

XML разрабатывался как язык удобный для создания и обработки документов программами и одновременно удобный для чтения и создания документов человеком.

Язык называется расширяемым, так как он позволять создавать разметку в соответствии с потребностями пользователей.

Открыть для просмотра или редактирования файл с расширением .xml можно с помощью обычного текстового редактора или интернет-браузера.

Содержание XML-документа оформляется наборами тегов и их атрибутов. Сочетание простой разметки, удобство восприятия человеком или программами, а также поддержка Юникод-кодировки привело к широкому использованию данного формата.

Теги, элементы и атрибуты XML-документа

Есть три термина, используемые для описания структуры и содержания XML-документов, это:

  1. Элементы (от англ. element) - определяют логическую структуру документа. Каждый XML-документ содержит один или несколько элементов. Границы элементов указываются начальным и конечным тегами. Элементы могут содержать в себе вложенные или дочерние элементы.
  2. Теги (от англ. tag) — конструкция разметки, которая содержит имена элементов и их содержание.
  3. Атрибуты (от англ. attribute) — конструкция разметки, которая содержит дополнительные свойства элементов.

Пример XML-документа с пояснениями

<?xml version="1.0" encoding="UTF-8"?>
<address>
 <name>
   <title>Mrs.</title>
   <first-name>Mary</first-name>
   <last-name>McGoon</last-name>
 </name>
 <street>1401 Main Street</street>
 <city state="NC">Anytown</city>
 <postal-code>34829</postal-code>
 <empty-element />
</address>

Элемент <address> содержит вложенные элементы <name>, <street>,<city> и <postal-code>.

Элемент <name> содержит вложенные элементы <title>, <first-name> и<last-name>.

Соответственно, элементы <address>, <name>,<street>, <city>, <postal-code>, <title>,<first-name> и <last-name> формируют структуру XML-файла рассмотренного в данном примере.

Пояснения:

  1. <?xml version="1.0" encoding="UTF-8"?> — указание на то, что перед нами XML-файл;
  2. <address> — начальный (открывающий) тег элемента address;
  3. </address> — конечный (закрывающий) тег элемента address;
  4. <title>Mrs.</title> — Mrs. — это содержимое (значение) элемента <title>;
  5. <city state="NC">Anytown</city> — state="NC" — это атрибут и значение атрибута элемента <city>;
  6. <empty-element /> — пример пустого элемента.

Настройки импорта произвольных XML-файлов

Используя функцию «Импорт товаров» вы можете настроить ручной или автоматический импорт необходимых данных о товарах и/или разделах каталога интернет-магазина из XML-файла.

Загрузка в интернет-магазин прайс-листов, информации о товарах из XML-файлов произвольной структуры

Создание настройки импорта XML-файла в приложение WinShop

Создание настройки импорта XML-файла в приложение WinShop

При клике на кнопку «Далее», если в качестве файла импорта импорта указан xml-файл, вы перейдете к окну «Настройка xml разметки для "..." импорта». Здесь и нужно настроить соответствия, при помощи которых из древовидной структуры xml-файла будет получена таблица. Эта таблица будет использована для последующей загрузки информации о товарах в приложение WinShop.

Сопоставление элементов (веток) XML-файла с параметрами и характеристиками товаров интернет-магазина

WinShop автоматически считает структуру XML-файла и сформирует   ее в левой части окна «Ветки товаров (разделов)». Интерфейс «Ветки товаров (разделов)» раскрывает дерево элементов и связанных с ними атрибутов для импортируемого XML-файла.

В правой части окна «Поля товаров (разделов)» необходимо создать те поля, в которые будут импортироваться содержимое элементов и атрибутов.

Переходим к настройке импорта данных о товарах и XML-файла.

Шаг 1.

В окне «Ветки товаров (разделов)» отмечаем галочками базовые ветки xml-файла. Базовая ветка — это ветка товара и/или раздела, которая содержит внутри себя все данные товара, и количество этих веток в xml-файле будет равно количеству импортируемых товаров. Т.е. одна базовая ветка в xml-файле создаст одну строку в таблице импорта.

Как правило, вам нужно определить и отметить только одну ветку как базовую.

Например, если мы хотим импортировать данные из XML-файла следующей структуры:

<offers>
 <item id="128" group_id="16408">
 <main_fields>
 <item_code>128</item_code>
 <__manufacturer_code>art-multi-10</__manufacturer_code>
 <name>Мультиварка PANASONIC SR-TMH10</name>
 <headline>Мультиварка PANASONIC SR-TMH10</headline>
 <abstract><STRONG>Компактная мультиварка с функциями варки, приготовления на пару, тушения и выпечки.</STRONG>  Таймер отсрочки до 13 часов. Возможность длительного, до 12 часов, тушения позволит не только приготовить традиционную или необычную еду, но и справиться с любым жестким мясом.</abstract>
 <info><P><STRONG>Характеристики</STRONG><BR>Объем, л 2.5<BR>Тип управления Электронное<BR>Потребляемая мощность, Вт 490<BR>Таймер 13 ч.<BR>Отложенный старт Есть<BR>Автоподогрев Есть<BR>Ускоренное приготовление Есть<BR>Дисплей Светодиодный (LED)<BR><STRONG>Режимы работы</STRONG><BR>Выпечка Есть<BR>Приготовление на пару Есть<BR>Тушение Есть<BR>Суп Есть<BR>Каша Есть<BR>Рис Есть<BR><STRONG>Размеры и вес</STRONG><BR>Ширина, см 25.5<BR>Высота, см 24.5<BR>Глубина, см 24.8<BR>Вес, кг 2.4</P></info>
 <currency_id>BYN</currency_id>
 <price>270.2</price>
 <__wholesale_price>100</__wholesale_price>
 <__purchase_price>99</__purchase_price>
 <order_delay>0</order_delay>
 <__quantity>50</__quantity>
 <image>PANASONIC_SR-TMH10.jpeg</image>
 <seo.title>Мультиварка PANASONIC SR-TMH10 купить в Минске</seo.title>
 <seo.description>Мультиварка PANASONIC SR-TMH10 купить в Минске — название магазина</seo.description>
 <seo.keywords>Мультиварка PANASONIC SR-TMH10</seo.keywords>
 </main_fields>
 </item>
</offers>

в качестве базовой ветки необходимо выбрать ветку <item>.

Определение и выбор элемента (ветки) содержащей информации о товарах в XML

Шаг 2

Для каждой базовой ветки в окне «Поля товаров (разделов)» необходимо настроить набор полей, каждое из которых предназначено для получения значения одной характеристики товара. Одно такое поле создаст один столбец в таблице импорта.

Вы можете: Добавить новое поле; Отредактировать выделенное; и/или Удалить выделенные поля при помощи кнопок выше окна или из контекстного меню.

Поле импорта задается в виде текстовой формулы с определенным синтаксисом (описан ниже), для его настройки служит окно «Поле импорта». Здесь вы можете настроить поле, используя графический интерфейс или вводя формулу в поле «Формула».

В подавляющем большинстве случаев достаточно вызвать выпадающий список (дерево) в поле «Формула», выбрать нужный атрибут или ветку, в котором(ой) находится значение характеристики, и нажать кнопку «ОК».

Дерево в поле «Формула» формируется исходя из веток или элементов, входящих в базовую ветку.

На скриншоте представленном выше, показано как мы сопоставили содержимое ветки XML-файла <item_code> со столбцом id.

Шаги 1 и 2 необходимо повторить для всех свойств товаров, который мы хотим загрузить в WinShop из импортируемого XML-файла.

Шаг 3

Допустим, что на шагах 1 и 2 мы сделали сопоставление для 4-х полей:

  1. id
  2. name
  3. price
  4. rub

Далее нам необходимо указать, как названия столбцов будут связаны со свойствами карточки товара, существующими в приложении WinShop. Например, Столбец «Price» будет соответствовать свойству цена.

Далее нажимаем на кнопку «Импортировать».

При наличии ошибок или конфликтов при импорте данных приложение выдаст соответствующие ошибки. Их необходимо исправить.

Карточка товара интернет-магазина созданная на базе импорта из XML-файла

В данном примере мы настроили сопоставление только 4-х полей. Для реального использования вы можете настроить сопоставление для всех свойств карточки товара и заданных значений групповых полей. Указанные настройки сохраняться для выполнения последующих обновлений.

 

Обратите внимание!

Вы можете сохранить настройки импорта для XML-файлов предоставляемых определенным поставщиком и использовать их в режиме ручного или автоматического, по расписанию, обновления данных.

При импорте характеристик товаров, поля для этих характеристик должны быть определены в карточке товара или в групповых полях.

Обработав информацию о товарах в приложении WinShop, используя модуль «Экспорт данных» вы можете управлять структурой каталога, товарами, их ценами и характеристиками для интернет-магазинов созданных на любой CMS: 1С-Битрикс, CS-Cart, Drupal, HostCMS, ImageCMS, Joomla!, Magento, MODX, NetCat, OpenCart, PHPShop, PrestaShop, Shop-Script, UMI.CMS, WordPress, OcStore, VirtueMart, JoomShopping, eCommerce, WooCommerce, InSales, Digistr, Recommerce.

 

Дополнительные возможности окна «Поле импорта»

Фильтры

Для каждой ветки на пути к значению характеристики вы можете настроить один или несколько фильтров.

Рассмотрим настройку фильтров на нескольким примерах.

Пример 1

<row status="1">
 <field>13623</field>
 <field>Стиральная машина Indesit WISN 82</field>
 <field>Стиральная машина Indesit WISN 82</field>
 <field>526</field>
</row>

В данном случае все вложенные характеристики расположены в ветках с одинаковым именем «field», с определенной последовательностью. Для структур такого типа следует использовать индексный фильтр, в результате поля будут выглядеть следующим образом.

Пример 2

<row status="1">
 <field name="item_code">13623</field>
 <field name="name">Стиральная машина Indesit WISN 82</field>
 <field name="headline">Стиральная машина Indesit WISN 82</field>
 <field name="price">526</field>
</row>

В данном случае все вложенные характеристики расположены в ветках с одинаковым именем "field", но, в отличие от предыдущего примера, идентифицировать их можно по значению атрибута "name". Для структур такого типа следует использовать фильтр по значению. В результате поля будут выглядеть следующим образом.

Результат

«Атрибут» — значение атрибута; доступен и выбран, если в поле формула выбран атрибут (начинается с символа "@").

«Значение» — значение ветки; доступен и выбран по умолчанию, если в поле формула выбрана ветка;

«Текст» — возвращает текст указанной ветки, включая текст вложенных в нее веток.

Например, для структуры:

<info>Характеристики:
<field>
Количество оборотов:</field><value>800</value>
<field>Класс энергопотребления:</field> <value>A</value>
</info>

результат будет: "Характеристики: Количество оборотов: 800 Класс энергопотребления: A", а не "Характеристики: ".

«Список» — для списка указанных веток вернет значения в виде списка, пригодное для импорта, в списковые групповые поля;

Например, для структуры:

<row>
 <options>
 <option>Блокировка</option>
 <option>Предварительное полоскание</option>
 <option>Ручная стирка</option>
 </options>
</row>

и формулы "options/option#list", результат будет: "Блокировка|Предварительное полоскание|Ручная стирка".

«Постоянное» — при существовании указанной ветки или атрибута, любое его значение будет заменено на указанное пользователем постоянное значение.

 

 

Получить консультацию по настройке или высказать свои предложения по развитию приложения WinShop вы можете по электронной почте support@beseller.by или номерам телефонов: + 375 17 21-101-21, +375 29 145-77-45, + 375 29 851-00-51.