Документация по modx дополнению msklad

Данное дополнение было удалено с репозитория и на замену ему пришло дополнение mSync, но некоторые сайты до сих пор используют msklad для решения задач, именно для них, я думаю, эта статья будет полезной.

Подготовка

Для работы с msklad необходимо предварительно установить дополнения Console и miniShop2.

После установки всех необходимых дополнений для импорта из 1С требуются два файла: import.xml и offers.xml

  • import.xml — основной файл, содержит структуру каталога и сами товары
  • offers.xml — содержит характеристики товара, ценовые предложения и тд

Заходим в панель управления сайта, затем закачиваем файлы в папку assets/components/msklad/1c_temp

Настройки MiniShop2

Для успешного импорта достаточно создать ресурс — категория товаров.

Настройки mSklad

Заходим в "Системные настройки" в параметрах отбора выбрать "msklad", затем изменить следующие параметры:

  • ID категории каталога - ID ресурса созданной категории товаров
  • создавать tv - да
  • Лимит выполнения - 29

Процесс импорта

В системных настройках необходимо скопировать следующие значения параметров:

  • Логин для CommerceML
  • Пароль для CommerceML

Переходим на сайт base64.ru и вставляем в верхнее поле строку вида - логин:пароль Должно получится чтото типо такой комбинации - mSync:0bda22998c0411c000004d41630fcd3

Копируем из нижнего поля полученную строку
(пример строки авторизации: bVN00M6MGJkYTIyOTk4YzA0MTFj00000Y0NGQ0MT000ZDM=)

Затем формируем ссылку, где "сайт" это адрес сайта, а "строка_авторизации" это полученная выше строка

импорт товаров:

http://сайт/assets/components/msklad/1c_exchange.php?http_auth=htauth:строка_авторизации&type=catalog&mode=import&filename=import.xml

Вставляем полученную строку в браузер и переходим по ссылке (обновляем страницу (f5), тем самым повторяем данную операцию пока не покажется сообщение об успешном завершении импорта "success")

импорт характеристик:

http://сайт/assets/components/msklad/1c_exchange.php?http_auth=htauth:строка_авторизации&type=catalog&mode=import&filename=offers.xml

Алгоритм тотже

Если импорт завис или требуется сделать повторный импорт, тогда заходим в "Console" и выполняем следующий запрос:

<?php
unset($_SESSION['last_1c_offer']);
unset($_SESSION['importFinish']);
unset($_SESSION['lastCategory']);
unset($_SESSION['totalCategories']);
unset($_SESSION['lastProperty']);
unset($_SESSION['totalProperties']);
unset($_SESSION['lastImportProduct']);
unset($_SESSION['lastProduct']);
unset($_SESSION['totalProducts']);
unset($_SESSION['categories_mapping']);
unset($_SESSION['properties_mapping']);
unset($_SESSION['feature_mapping']);
unset($_SESSION['price_mapping']);
$_SESSION['feature_mapping'] = array();

Обновляем страницу с ресурсами и видим результат импорта в категории товаров.

Примечание

По умолчанию все стандартные поля автоматически записываются в поля товаров минишопа, а все поля 1С которые были добавлены в товар самостоятельно, записываются в отдельные тв поля. Если требуется сделать импорт не в тв поле, а в поле товара, достаточно после импорта зайти в "Приложения" -> "mSync" и изменить "тип поля" на "поле msProduct" а в параметре "цель" указать название поля.

Дополнительная информация по импорту