ms_commerceml_fixer
Описание
Модуль Изменения для commerceml позволяет импортировать цены для всех витрин в зависимости от настроек модуля и настроек синхронизации. Модуль также расширяет функциональность импорта характеристик товаров, позволяя импортировать варианты и значения характеристик, включая скрытые.
Функциональность
Цены
- Импорт цен на все витрины при обмене через CommerceML
- Настройка одинаковых цен на все витрины
- Сопоставление цен на каждую витрину при обмене
- Настройка обнуления оптовых скидок при обмене общего товара
Характеристики
- Импорт вариантов и значений характеристик при обмене CommerceML
- Импорт вариантов и значений скрытых характеристик
- Автоматическое создание вариантов характеристик при отсутствии на сайте
- Отображение ошибок импорта в админ-панели
Принцип работы
Модуль работает через систему хуков CommerceML:
- Хук
update_product_post- обработка цен при обновлении товара:
- Проверяет настройку
prices_for_all_storefronts - Если включено, распространяет цены на все витрины:
- При включенной опции
same_prices_for_all_storefronts- устанавливает одинаковые цены на все витрины - Иначе - сопоставляет цены по типам цен из CommerceML на каждую витрину
- Использует функцию
fn_ms_commerceml_fixer_fill_product_prices()для заполнения данных о ценах
- Хук
commerceml_product_importer_import_pre- предобработка импорта товаров:
- Сохраняет значения характеристик товаров в сессию
- Работает только при включенной опции
feature_variants_import_enable
- Хук
update_product_pre- обработка характеристик перед обновлением товара:
- Восстанавливает значения характеристик из сессии
- Создаёт варианты характеристик при отсутствии (если включена опция
create_feature_variants) - Добавляет характеристики в данные товара
- Хук
get_product_features_pre- получение характеристик:
- При включенной опции
feature_hidden_variants_import_enableвключает скрытые характеристики в выборку - Добавляет статус 'H' (скрытый) в параметры выборки
- Функция
fn_ms_commerceml_fixer_check_storage_data()- проверка ошибок импорта:
- Получает данные об ошибках импорта из таблицы
storage_data - Используется для отображения ошибок в админ-панели
Расположение в админке
Настройки модуля:
- Модули → Управление модулями → Изменения для commerceml
Разделы настроек:
Цены:
- Цены на все витрины (
prices_for_all_storefronts) - при обмене цены будут записываться на все витрины исходя из сопоставления цен (по умолчанию: выключено) - Одинаковые цены на все витрины (
same_prices_for_all_storefronts) - при обмене с любого аккаунта цены будут записываться одинаковые на все витрины (по умолчанию: выключено)
Характеристики:
- Импортировать варианты и значения характеристик (
feature_variants_import_enable) - при обмене commerceml не все варианты характеристик и значения передаются на сайт, включить обход передачи (по умолчанию: включено) - Импортировать варианты и значения скрытых характеристик (
feature_hidden_variants_import_enable) - при обмене commerceml значения скрытых характеристик не передаются на сайт, включить обход передачи (по умолчанию: включено) - Создавать варианты характеристик (
create_feature_variants) - при обмене commerceml если отсутствуют варианты характеристик на сайте, то они будут созданы скриптом при обмене (по умолчанию: выключено)
Ошибки импорта:
- Отображаются в настройках модуля в разделе "Ошибки импорта"
- Можно очистить отдельные записи или все записи
Важные замечания
- Модуль работает только при обмене данными через CommerceML
- Настройки цен применяются только при обмене через CommerceML (
dispatch=commerceml.importилиdispatch=commerceml) - Импорт характеристик использует сессию для временного хранения данных
- Создание вариантов характеристик работает только для характеристик типа 'S' (селект)
- Модуль требует правильной настройки сопоставления типов цен в CommerceML для корректной работы с ценами на витрины
- English
- Русский
- 4.18.X
- 4.17.X
# Инструкция по использованию модуля ms_commerceml_fixer
Установка
- Установите модуль через раздел Модули → Скачанные модули
- Активируйте модуль Изменения для commerceml
Настройка
Настройка цен
- Перейдите в Модули → Скачанные модули → Изменения для commerceml
- В разделе Цены настройте:
Цены на все витрины:
- Включите для распространения цен на все витрины при обмене
- Цены будут записываться на все витрины исходя из сопоставления цен на каждую витрину
Одинаковые цены на все витрины:
- Включите для установки одинаковых цен на все витрины
- При обмене с любого аккаунта цены будут записываться одинаковые на все витрины
- Работает только при включенной опции "Цены на все витрины"
- Сохраните настройки
Важно: Для корректной работы с ценами на витрины необходимо правильно настроить сопоставление типов цен в настройках CommerceML.
Настройка характеристик
- В разделе Характеристики настройте:
Импортировать варианты и значения характеристик:
- Включите для импорта всех вариантов и значений характеристик при обмене
- По умолчанию включено
Импортировать варианты и значения скрытых характеристик:
- Включите для импорта значений скрытых характеристик
- По умолчанию включено
Создавать варианты характеристик:
- Включите для автоматического создания вариантов характеристик при отсутствии на сайте
- Работает только для характеристик типа "Селект"
- По умолчанию выключено
- Сохраните настройки
Использование
Импорт цен на все витрины
После настройки модуля при обмене данными через CommerceML:
- При включенной опции "Одинаковые цены на все витрины":
- Цены с текущей витрины будут скопированы на все остальные витрины
- Все витрины будут иметь одинаковые цены
- При выключенной опции "Одинаковые цены на все витрины":
- Цены будут сопоставляться по типам цен из CommerceML
- Каждая витрина получит цены согласно своему сопоставлению типов цен
Импорт характеристик
После настройки модуля при обмене данными через CommerceML:
- Импорт вариантов и значений:
- Все варианты и значения характеристик будут импортированы
- Включая скрытые характеристики (если включена соответствующая опция)
- Создание вариантов:
- При включенной опции "Создавать варианты характеристик":
- Если вариант характеристики отсутствует на сайте, он будет создан автоматически
- Работает только для характеристик типа "Селект"
Просмотр ошибок импорта
- Перейдите в настройки модуля
- В разделе "Ошибки импорта" просмотрите список ошибок
- При необходимости:
- Очистите отдельную запись об ошибке
- Очистите все записи об ошибках
Импорт/Экспорт
Модуль не поддерживает импорт/экспорт данных. Работает только при обмене данными через CommerceML.
Тестирование
- Настройте модуль согласно требованиям
- Выполните обмен данными через CommerceML:
- Проверьте импорт цен на все витрины
- Проверьте импорт характеристик
- Проверьте результаты:
- Убедитесь, что цены записались на все витрины
- Убедитесь, что характеристики импортировались корректно
- Проверьте создание вариантов характеристик (если включено)
- Проверьте ошибки импорта:
- Откройте раздел "Ошибки импорта" в настройках модуля
- Убедитесь, что ошибки отображаются корректно
Обслуживание
Обновление модуля
Обновление модуля выполняется стандартным способом через раздел Модули → Скачанные модули.
Удаление модуля
При удалении модуля:
- Все настройки модуля удаляются
- Импорт цен на все витрины прекращается
- Импорт характеристик возвращается к стандартному поведению CommerceML
- Данные об ошибках импорта остаются в таблице
storage_data(не удаляются автоматически)
Ключевые файлы
func.php- основные функции модуля (заполнение цен, проверка ошибок)hooks.func.php- хуки для обработки товаров и характеристик при импортеcontrollers/backend/ms_commerceml_fixer.php- контроллер для отображения ошибок импортаdesign/backend/templates/addons/ms_commerceml_fixer/settings/import_errors.tpl- шаблон отображения ошибокaddon.xml- конфигурация модуляvar/langs/ru/addons/ms_commerceml_fixer.po- языковые файлы
**v1.0.5** от 22.12.2023 [\*] Изменены короткие теги <? на обычные <?php [+] Добавлена возможность передавать значения скрытых характеристик из commerceml **v1.0.4** от 31.05.2023 [!] Исправлена передача числовых зарактеристик (если $feature_type == 'N', то отправляется не номер варианта, а значение), ранее отправлялся номер варианта, что приводило к неправильному отображению. **v1.0.3** от 29.04.2023 [!] Исправлена языковая переменная **v1.0.2** от 29.04.2023 [+] Добавлена возможность смотреть записи в таблице storage_data о файлах испорта и статусах и удалять записи, если произошла ошибка или зависание **v1.0.1** от 29.04.2023 [+] Добавлена возможность передавать варианты и значения хараткеристик, которые commrceml пропускает **v1.0.0** от 07.03.2023 [+] Первое издание *** [+] Добавлено [-] Удалено [\*] Изменено [!] Исправлена ошибка
Здесь можно поделиться своим мнением и оценить нашу работу.
Ваши отзывы помогают нам стать лучше и предлагать вам еще более качественный сервис.