Как импортировать данные о товарах из XML

27.01.2022

Варианты реализации XML-выгрузки

  1. Возможно передавать данные о товарах и их категориях, как в одном общем файле, так и в двух отдельных (рекомендуется): один - для категорий, второй - для товаров
  2. Возможна, как выгрузка только XML-данных, так и XML-данных вместе с изображениями товаров (рекомендуется). XML-файлы могут загружаться, как в ту же папку, что и изображения, так и в другие доступные для загрузки папки
  3. Если планируется онлайн-продажа товаров на сайте, то в XML-данных о товарах должна быть хотя бы одна свойство, которое можно использовать в качестве цены. Могут быть переданы данные и о других свойствах
  4. Данные можно загружать, как вручную, так и автоматически (рекомендуется) через FTP
  5. При использовании FTP рекомендуется использовать шифрование

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

Имена файлов могут быть любыми, но желательно избегать русских букв и пробелов. С латиницей проблем нет. Также важно, чтобы с каждой новой выгрузкой названия файлов не менялись.


<?xml version="1.0" encoding="windows-1251"?>
<Элементы>
  <Элемент ID="12325" Имя="Аксессуары" РодительID="---"/>
  <Элемент ID="12343" Имя="Аккумуляторы" РодительID="12325"/>
  <Элемент ID="12341" Имя="Зеркала" РодительID="12325"/>
  <Элемент ID="12345" Имя="Наклейки" РодительID="12325"/>
  <Элемент ID="12344" Имя="Сигнализации, магнитолы, подсветка и др." РодительID="12325"/>
  <Элемент ID="12326" Имя="Тюнинг" РодительID="12325"/>
  <Элемент ID="12346" Имя="Фильтра" РодительID="12325"/>
  <Элемент ID="12368" Имя="Бензопилы" РодительID="---"/>
...
  <Элемент ID="12333" Имя="Ремни вариатора генератора" РодительID="12330"/>
  <Элемент ID="12335" Имя="Свечи" РодительID="12330"/>
  <Элемент ID="12337" Имя="Удаленное" РодительID="12330"/>
  <Элемент ID="01111" Имя="Удаленное" РодительID="---"/>
  <Элемент ID="12367" Имя="Удаленное" РодительID="01111"/>
</Элементы>


В примере приведены данные о категориях товаров. У каждой из них есть:

  • ID (нечто уникальное, можно латинские буквы, цифры и дефисы)
  • Имя (здесь ограничений нет)
  • ID родительской категории (для категорий верхнего уровня указываем --- - три дефиса)
  • Могут быть и другие свойства

Названия тегов и их свойств Вы можете использовать любые. Главное следовать следущим правилам:

  • XML-заголовок может быть любым, но корректным.
  • Какая бы кодировка ни была указана в XML-заголовке, 1С всегда использует windows-1251. Если в Вашем случае используется другая кодировка, об этом нужно сообщить отдельно
  • В именах тегов и их свойств допускаются буквы (в том числе кириллица), цифры, подчёркивания. Первый символ должен быть буквой. Других ограничений нет.
  • Если через выгрузку нужно удалить с сайта категорию или товар, то для неё/него нужно указать имя Удаленное

<?xml version="1.0" encoding="windows-1251"?>
<Элементы>
  <Элемент ID="00002702" Имя="Автомат сцепления Юпитер" БазоваяЕИ="шт" Категория="12318" АдресФото="DSC03810.JPG" Цена="156" Остаток="37"/>
  <Элемент ID="00003535" Имя="Удаленное" БазоваяЕИ="пара" Категория="12318" АдресФото="DSC03808.JPG" Цена="4190" Остаток="0"/>
  <Элемент ID="00900631" Имя="Амортизатор задний Иж реставрация" БазоваяЕИ="пара" Категория="12318" АдресФото="DSC038082.JPG" Цена="1350" Остаток="1"/>
  <Элемент ID="00004115" Имя="Удаленное" БазоваяЕИ="пара" Категория="12318" АдресФото="DSC038081.JPG" Цена="1578" Остаток="0"/>
  <Элемент ID="00003119" Имя="Барабан задний Юнкер" БазоваяЕИ="шт" Категория="12318" АдресФото="IMG_20160325_162751.jpg" Цена="1990" Остаток="6"/>
  <Элемент ID="00002159" Имя="Барабан передний в сборе ИЖ" БазоваяЕИ="шт" Категория="12318" АдресФото="DSC03798.JPG" Цена="1950" Остаток="4"/>
  <Элемент ID="00004042" Имя="Барабан сцепления Планета широкий Иж П5-01сб.1-41г.Ижевск" БазоваяЕИ="шт" Категория="12318" АдресФото="20171130_175731.jpg" Цена="1350" Остаток="0"/>
  <Элемент ID="00002315" Имя="Барабан сцепления внутрений Иж Планета" БазоваяЕИ="шт" Категория="12318" АдресФото="DSC03805.JPG" Цена="300" Остаток="0"/>
...
  <Элемент ID="00003578" Имя="Барабан сцепления внутрений Иж Юпитер" БазоваяЕИ="шт" Категория="12318" АдресФото="DSC03806.JPG" Цена="300" Остаток="2"/>
  <Элемент ID="00000016" Имя="Удаленное" БазоваяЕИ="шт" Категория="12318" АдресФото="DSC03859.JPG" Цена="2800" Остаток="0"/>
  <Элемент ID="00000015" Имя="Барабан сцепления ИЖ Юпитер 4 узкий в сборе 1-31" БазоваяЕИ="шт" Категория="12318" АдресФото="DSC03858.JPG" Цена="2800" Остаток="7"/>
</Элементы>


В примере приведены данные о товарах. У каждого из них есть:

  • ID (также нечто уникальное, можно латинские буквы, цифры и дефисы)
  • Имя (здесь тоже ограничений нет)
  • Категория (ID одной из категорий - про них написано в описании примера с категориями)
  • Адрес файла с изображением (желательно просто указывать имя файла - при этом нежелательно дублирование имён нескольких файлов)
  • Цена (в рублях)
  • Могут быть и другие свойства, например, единица измерения, остаток на складе
  • Если организация работает с СДЭК и нужен расчёт стоимости и срок доставки также нужны:
    • вес в килограммах
    • габариты в сантиметрах

Если используется один общий XML-файл для категорий и товаров


<?xml version="1.0" encoding="windows-1251"?>
<Элементы>
  <Элемент ID="00013813" Имя="Автомат сцепления ЗАЗ" БазоваяЕИ="шт" КатегорияID="12318" КатегорияНазвание="Сцепление"/>
  <Элемент ID="00092424" Имя="Удаленное" БазоваяЕИ="пара" КатегорияID="12318" КатегорияНазвание="Газ"/>
  <Элемент ID="00100369" Имя="Амортизатор задний ВАЗ" БазоваяЕИ="пара" КатегорияID="12318" КатегорияНазвание="Тормоз"/>
...
</Элементы>


В этом случае в свойствах товара указывается не только ID категории, но и её название.

Частичный или полный импорт данных

Импортировать можно, как все товары/категории, так и только необходимые. Новые добавятся, уже имеющиеся обновятся (сравнение идёт по ID).

О загрузке файлов

Вам будет предоставлен FTP-доступ к одной из папок на сайте. Желательно использовать шифрование - SFTP или FTPS. Часто бывает, что 1С шифрование не поддерживает. Если так, то можно и обычный FTP, но это не безопасно.

У Вас будет доступ на создание подпапок.

В ту же папку (или в подпапку) можно загружать изображения - каждое в отдельном файле (имена указываются в файле с товарами). После обработки сайт будет перемещать эти картинки в другую папку (по FTP она будет недоступна).

Файлы с данными о товарах/категориях также будут автоматически удаляться при успешном импорте.


CMS Zion WebEngine является бесплатной системой. Развивается за счёт рекламы, помощи веб-студии #webZion и других спонсоров.

 

Будем рады, если Вы поддержите нас любой суммой, а также поделитесь идеями на счёт каких-либо улучшений и доработок для CMS...

 

Заранее, большое, спасибо

 

Блог обновлений

Zion WebEngine 21.02.09
  • Доработаны классы для управления базой данной и заказами, а также вспомогательный класс для управления вкладками, административные CSS-определения и административные JS-скрипты: (спасибо Moto-Retail18):
    • Теперь при распечатке заказов из интернет-магазина можно выбирать вкладки, информацию с которых нужно или не нужно распечатывать
  • Доработан класс для работы с файлами и папками:
    • В разделе Инструменты меню администратора снова стал доступен пункт Размеры файлов и папок:
      • С его помощью, можно уточнить, какие файлы занимают больше всего место на диске и оценить, например, не привысили ли Вы доступное место на хостинге

Zion WebEngine Zion Catalog Что такое Меню администратора? База данных/Таблицы данных Веб-сервер/Хостинг Вкладки Интернет-магазин Классы Корзина для заказов Меню администратора Файлы/Папки

Zion WebEngine 21.02.04
  • Доработан плагин универсального меню:
    • Параметр sort теперь может брать значения из COOKIE- и GET-параметров
    • Для параметра sort теперь доступен новый вариант fields - сортировка по указанному списку полей:
    • Для тех же целей созданы новые параметры:
      • sort-fields - указание на то, по каким полям необходимо сортировать список:
        • поля перечисляются через запятую - их порядок имеет значение
        • если по какому-то полю нужна сортировка в обратном порядке, то перед его именем нужно указать -. Например, не name, а -name
        • этот параметр также может брать значение из COOKIE- и GET-параметров
      • sort-numbers - указание на то, какие поля при сортировке нужно считать числами:
        • без использования этого параметра в некоторых случаях в результате сортировки вместо списка вида, 1, 2, 3, 10, 20, 100 может получиться список вида 1, 10, 100, 2, 20, 3
        • поля перечисляются через запятую - их порядок не имеет значения
  • Доработан класс для управления базой данной:
    • Функции ColumnsExistsList перед именами полей, наличие которых в таблице нужно проверить, теперь можно указывать знак -. Например, не name, а -name:
      • В этом случае, если name найдено, то будет возвращено name, а не -name
      • Кое-где это может быть полезно, например, для определения списка полей, по которым доступна сортировка (с символом - сортировка по данному полю будет в обратном, а не в обычном порядке)
  • Cоздан новый элемент Статистика, в котором отображаются данные о различных параметрах "популярности" той или иной контентной единицы (доступен при наличии в комплекте поставки Zion SEO Booster):
    • Количество просмотров данной страницы (доступно при наличии в комплекте поставки Zion PubHub):
      • Для сбора этих данных доработан главный файл гостевого интерфейса
    • Количество добавлений в корзину данного товара (доступно при наличии в комплекте поставки Zion Catalog):
      • Для сбора этих данных доработан класс для управления корзиной
    • Количество заказов данного товара (доступно при наличии в комплекте поставки Zion Catalog):
      • Для сбора этих данных доработан класс для управления заказами

Zion WebEngine Zion Catalog Zion SEO Booster POST/GET-данные База данных/Таблицы данных Гостевой интерфейс Интернет-магазин Классы Контент/Контентные единицы Корзина для заказов Куки Меню/Списки/Навигация Плагины Число Элементы Плагин Menu

Zion WebEngine 21.02.01
  • Доработаны классы для управления базой данной и заказами, а также административные CSS-определения: (спасибо Moto-Retail18):
    • Реализована возможность распечатки заказов из интернет-магазина:
      • При открытии того или иного заказа на панели инструментов появляется необходимая для распечатки кнопка

Zion WebEngine Zion Catalog Что такое Панель инструментов? База данных/Таблицы данных Интернет-магазин Классы Корзина для заказов Панель инструментов

Zion WebEngine 21.01.28
  • Доработан импорт данных из Excel/CSV:
    • Применён нативный "движок" для работы с форматом CSV вместо самописного
    • Для большего удобства изменён порядок параметров для настройки импорта
    • Реализована возможность указать префикс, который в случае необходимости будет удалён из адресов всех изображений
    • Ранее было доступно связывание всех записей (например, товаров) со всеми указанными записями (например, категориями). Теперь доступно связывание определённых товаров только с необходимыми категориями:
      • В этом случае категории создаются автоматически на основе данных из указанного в настройках столбца
      • Доступно связывание с несколькими категориями выбранного типа:
        • Важно, чтобы при этом для данного типа был выбран шаблон по умолчанию
      • Доступно автоматическое создание надкатегорий и подкатегорий
      • При этом в случае отметки галочки Удалить старые записи перед импортом будут удалены не только товары, но и категории
    • Помимо кодировки windows-1251 теперь доступно использование кодировки utf-8
    • Помимо точки с запятой теперь в качестве разделителя между ячейками доступно использование запятой
    • Если в некоторых столбцах импортируемых данных указаны не только значения, но и названия характеристик, то доступна опция для указания количества таких столбцов:
      • Затем можно указать, в каких столбцах хранятся названия, а в каких столбцах их значения:
        • То есть в одном столбце могут храниться данные о любом количестве характеристик
    • Теперь по завершение импорта, в том числе неудачного нет необходимости задавать параметры заново:
      • Также теперь нет необходимости заново загружать файл с импортируемыми данными, так как он не удаляется по завершении импорта

Zion WebEngine Zion Import CSV/Excel Изображение Импорт/Экспорт Категории Кодировки/Наборы символов Место в структуре Сайт-каталог Связи Типы Характеристики/Разновидности Шаблоны контента Что такое Тип контента?

Zion WebEngine 21.01.26
  • Доработана система мониторинга (спасибо VisualMathStart):
    • Значительно расширен список файлов для очистки после обновления CMS

Zion WebEngine Что такое система Мониторинга? Мониторинг Файлы/Папки

Zion WebEngine 21.01.25
  • Доработана интеграция с файл-менеджером KCfinder (спасибо Хронос Медиа):
    • Теперь в случае необходимости можно разрешить загрузку файлов через файл-менеджер в нестандартую папку:
      • В том числе теперь легко выделить для каждого авторизованного пользователя свою собственную папку без возможности доступа к папкам других пользователей

Zion WebEngine Доступы/Пользователи Файл-менеджер Файлы/Папки

Zion WebEngine 21.01.22
  • Доработан класс для работы с шаблонами:
    • Расширен набор доступных функций:
      • В том числе стало возможно определение ID элемента в формате класс_номер в указанном шаблоне по указанному имени:
        • Поиск ведётся только для обычных (не уникальных) элементов
        • Если элементов с таким названием в шаблоне несколько, вернётся ID первого найденного

Zion WebEngine Классы Шаблоны контента Элементы Что такое Элементы?

Zion WebEngine 21.01.21
  • Доработан элемент Связи (спасибо Хронос Медиа):
    • Расширен набор параметров для плагина, позволяющего редактировать связи между контентными единицами:
      • В том числе теперь при необходимости можно скрывать не нужные в том или ином случае кнопки напротив связываемых записей
  • Доработана интеграция с файл-менеджером KCfinder:
    • Устранены недочёты при разрешении или ограничение доступов для групп пользователей

Zion WebEngine Доступ Групп пользователей Контент/Контентные единицы Плагины Связи Файл-менеджер Элементы Что такое Плагины?

Zion WebEngine 21.01.14
  • Доработаны классы для работы с проектом, типами и шаблонами, а также элемент Связи (спасибо Хронос Медиа):
    • Упрощено редактирование некоторых доступов для групп пользователей

Zion WebEngine Доступ Групп пользователей Классы Связи Типы Шаблоны контента Элементы Что такое Тип контента?

Zion WebEngine 21.01.13
  • Доработаны классы для работы с корзиной и заказами (спасибо Group Experience):
    • Расширены возможности для работы с корзиной через AJAX
    • Расширены возможности по настройке формы заказа для услуг, оказываемых удалённо и не требующих доставки и/или самовывоза (например, онлайн-обучение):
      • В том числе стала доступна возможность скрыть в форме сразу все поля для указания адреса

Zion Catalog AJAX Классы Корзина для заказов Способы доставки/самовывоза Формы Что такое Классы?

Zion WebEngine 21.01.07
  • Учтены современные требования к favicon:
    • Доработан элемент HTML-код веб-страницы
    • Доработаны классы для управления проектом и шаблонами
    • Доработан монитор ядра
    • Доработан плагин Meta

Zion WebEngine Zion SEO Booster HTML-код веб-страницы SEO-параметры Классы Мониторинг Плагины Шаблоны контента Элементы

Zion WebEngine 21.01.04
  • Доработаны страницы ошибок (спасибо Феникс):
    • Устранены некоторые недочёты
  • Для совместимости с новыми стандартами CMS доработаны некоторые компоненты:
    • Элемент HTML-код веб-страницы
    • Классы для управления проектом, пользователями и шаблонами
    • Мониторы MySQLi и ядра
    • Обработчики обратной связи, обратного звонка
    • Настраиваемые модули для управления уведомлениями о заказах на системный email и для расчёта стоимости и срока доставки через СДЭК
    • Плагины Meta и SendMail

Zion WebEngine Zion Catalog Zion Mail Back Zion SEO Booster Zion xDelivery Zion Sender Email-сообщения HTML-код веб-страницы SEO-параметры База данных/Таблицы данных Доступы/Пользователи Классы Мониторинг Настраиваемые модули Обработчики Обратная связь/Обратный звонок Плагины Рассылки Реакции на заказ Способы доставки/самовывоза Страницы ошибок Шаблоны контента Элементы

Zion WebEngine 20.12.29
  • Доработан класс для миграции со старых версий CMS (спасибо С-Полимер):
    • Устранены недочёты при конвертации редактируемых полей
    • Реализована миграция шрифтов

Zion WebEngine Что такое CMS Zion WebEngine? Классы Миграция

Zion WebEngine 20.12.25
  • Доработан элемент Дата:
    • Устранены некоторые недочёты, допущенные в предыдущем обновлении
  • Доработан плагин универсального меню (спасибо Хронос Медиа):
    • Добавлен новый вариант значения для параметра include-sort:
      • Со значением sort он позволяет все записи, добавленные через параметр include, сортировать вместе со всеми другими записями в списке

Zion WebEngine Zion Pub Hub Дата/Время/TimeMashine Меню/Списки/Навигация Обновления CMS Плагины Элементы Плагин Menu

Zion WebEngine 20.12.24
  • Доработан элемент Дата (спасибо Хронос Медиа):
    • Теперь обновление времени до текущего при сохранении стало опциональным:
      • Если отметить соответсвующую галочку, то время не изменится
      • Если галочку снять, то будет установлено текущее время (и указанная дата)
  • Доработан плагин TimeMashine:
    • Устранены некоторые недочёты, допущенные в предыдущем обновлении
  • Доработан плагин универсального меню:
    • Добавлен параметр include-sort:
      • Со значением по умолчанию end он добавляет все записи, перечисленные в параметре include в конец списка (как и раньше)
      • Со значением begin он добавляет все записи, перечисленные в параметре include в начало списка

Zion WebEngine Zion Pub Hub Дата/Время/TimeMashine Меню/Списки/Навигация Обновления CMS Плагины Элементы Плагин Menu

Zion WebEngine 20.12.23
  • Доработан элемент Дата (спасибо Хронос Медиа):
    • Теперь под полем с датой доступна кнопка, при нажатии на которую устанавливается текущая дата:
      • Её использование быстрее и удобнее, чем браузерный виджет с календарём
  • Создана система мониторинга для пакета Zion User Control (спасибо Новый стандарт):
    • В том числе реализовано создание оформления по умолчанию для адресных уведомлений пользователям

Zion UserControl Zion Pub Hub Веб-браузер Дата/Время/TimeMashine Доступы/Пользователи Мониторинг Уведомления Элементы Что такое Элементы?

Zion WebEngine 20.12.22
  • Доработан плагин TimeMashine (спасибо Хронос Медиа):
    • Теперь с его помощью можно смещать заданную временную метку на любое количество годов, месяцев, дней, часов, минут, секунд:
      • В том числе может быть полезно для отображение даты и времени в часовом поясе, отличающемся от часового пояса на веб-сервере
    • В мастер вставки плагина TimeMashine также внесены изменения для отображения соответствующих подсказок по новым возможностям

Zion WebEngine Веб-сервер/Хостинг Дата/Время/TimeMashine Плагины Помощники/Мастеры/Инструкции/Подсказки Что такое Плагины?

Zion WebEngine 20.12.14
  • Доработан класс для управления контентом (спасибо Хронос Медиа):
    • Доработано создание файла Sitemap.XML по умолчанию

Zion WebEngine SEO-параметры XML/RSS/1С/YML Классы Контент/Контентные единицы Как создать sitemap.xml?

Zion WebEngine 20.12.11
  • Доработан класс для управления обменом сообщениями (спасибо Новый стандарт):
    • Добавлены два новых плагина, упрощающие настройку списков чатов и сообщений:
      • chat_UsersButMe - возвращает список ID всех участников указанного (или открытого сейчас) чата, кроме текущего пользователя 
      • chat_Name - возвращает название указанного (или открытого сейчас) чата

Zion Chat Доступы/Пользователи Классы Обмен сообщениями/Чат Плагины Что такое Плагины?

Zion WebEngine 20.12.10
  • Доработаны класс для управления пользователями и элемент Основной текст (спасибо Новый стандарт):
    • Расширен список условий, доступных для использования в формах пользователей
      • Дополнены соответствующие подсказки:
        • Теперь они отображаются не под каждым полем для правки основного текста, а только под полем для правки основного текста формы пользователей

Zion WebEngine Доступы/Пользователи Классы Основной текст Помощники/Мастеры/Инструкции/Подсказки Условия Формы для пользователей Элементы Элемент "Основной текст"

Ответы на вопросы

Как импортировать данные о пользователях из XML

Как загрузить данные о пользователях, например, о клиентах на сайт из 1С и аналогичных внешних систем через формат XML

Zion UserControl Zion Import XML/RSS/1С/YML Импорт/Экспорт Меню администратора

Что такое Меню администратора?

Общая информация о Меню администратора: что это, где его найти и как им пользоваться?

Zion WebEngine Zion UserControl Zion Catalog Zion Mail Back Zion SEO Booster Zion xDelivery Zion Import Zion Gallery Zion xPayment Zion Pub Hub Zion Export Zion JivoSite Zion Chat Zion Multi-Lang Zion Banners Manager Zion Sender Zion Server Email-сообщения SMS SMTP/PHP-mail XML/RSS/1С/YML Валюты Веб-сервер/Хостинг Галереи/Слайды Доступ Групп пользователей Доступы/Пользователи Изображение Импорт/Экспорт Интернет-магазин Категории Корзина для заказов Корзина для мусора Кэш/Кеш Меню/Списки/Навигация Меню администратора Многоязычность/Языки Обновления CMS Обмен сообщениями/Чат Обратная связь/Обратный звонок Онлайн-консультант Политика конфиденциальности Помощники/Мастеры/Инструкции/Подсказки Рассылки Реакции на заказ Сайт-каталог Скидки/Наценки Спам Способы доставки/самовывоза Способы оплаты Файлы/Папки ФЗ-152 Формы Шаблоны контента Эскизы

Что такое Тип контента?

Общая информация о Типах контента: что это, для чего они нужны, и как их использовать

Zion WebEngine Zion Catalog Zion Pub Hub Меню/Списки/Навигация Типы

Как редактировать Контент?

Как управлять страницами, редактируемыми полями, новостями, статьями, товарами, аксессуарами и другими контентными единицами?

Zion UserControl Zion Catalog Zion Pub Hub Адрес (URL)/ЧПУ/Переадресация Кэш/Кеш Меню/Списки/Навигация Помощники/Мастеры/Инструкции/Подсказки Фильтрация Шаблоны контента

Как настроить сайт?

Zion WebEngine 26 - CMS без абонентской платы

Что такое Комплект поставки?

Общая информация о Комплекте поставки: что это, где его посмотреть и как можно расширить?

Настраиваемые модули

Что такое Вкладки?

Общая информация о Вкладках: что это, для чего они нужны, и как их использовать

Zion WebEngine Zion Catalog Zion Gallery Zion Pub Hub Вкладки

Что такое Шаблон контента?

Общая информация о Шаблонах контента: что это, для чего они нужны, и как их использовать

Zion WebEngine Шаблоны контента

Как подтвердить права на сайт в поисковой системе?

Как подтвердить права на сайт в Яндекс.Вебмастере, Google Search Console, Кабинете вебмастера Mail.Ru, Bing - Webmaster Tools и других аналогичных сервисах

SEO-параметры