Всего 125 977 комментариев

Артур Шевченко
19 минут назад
0
Стоит подумать и добавить, так как 100% потребуется как-то модифицировать данные из 1С. Частый кейс это не соответствие категорий на сайте и категорий в 1С, через событие можно будет на лету менять родителя.
Mishiko
2 часа назад
0
Почитал. У меня сейчас
XMLReader → SimpleXML-узел → немедленный save() в MODX
Попробую реализовать
XMLReader
   ↓
CommerceMlParser
   ↓
DTO: CategoryData, ProductData, OfferData
   ↓
Normalizer + Validator
   ↓
ImportService
   ↓
CategoryWriter / ProductWriter / OfferWriter
Николай Савин
3 часа назад
0
Чтение и разбор выгрузки идут напрямую из XML? Если да, рекомендую как следует изучить вот эту статью, нашего бывшего коллеги Павла
Mishiko
Сегодня в 11:22
0
Нет, собственных событий CommerceBridge 1C сейчас нет,
  • отсутствуют вызовы $modx->invokeEvent();
  • transport-пакет не регистрирует modPlugin;
  • импорт выполняется прямыми сохранениями моделей;
  • смена статуса идёт через сервис miniShop3, поэтому там могут срабатывать штатные события miniShop3
Артур Шевченко
Сегодня в 11:12
0
Через процессоры как раз наоборот дольше, но есть события, что важно, так как на них может быть навешена какая-то кастомная логика. Кстати, как в пакете дела с событиями, они есть?
Prihod
Сегодня в 00:27
+2
Начиная с версии 3.0.0-beta пакет доступен под MODX3

Минимальные требования:
  • MODX 3.2.*
  • PHP 8.4
Mishiko
Вчера в 23:36
0
Нет. Сейчас категории и товары создаются напрямую через xPDO-модели:
— категории: newObject(msCategory::class)save();
— товары: newObject(msProduct::class)save();
— данные товара: msProductDatasave().

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

В планах сделать и синхронизацию через REST API там можно будет предусмотреть два режима direct и processor
Артур Шевченко
Вчера в 23:18
0
Создание категорий, товар происходит через процессоры?
Wassi Wassinen
Вчера в 12:44
0
Артур, спасибо за отклик.
Артур Шевченко
Вчера в 12:07
+1
Это не ошибки, это предупреждения, на работу не влияет, но я поправлю.
Wassi Wassinen
Вчера в 00:03
0
И ещё такие ошибки:

[2026-06-20 23:58:37] (ERROR @ /var/www/.../data/www/.../core/cache/includes/elements/modplugin/12.include.cache.php : 12) PHP warning: Undefined array key "siSession"
[2026-06-20 23:58:37] (ERROR @ /var/www/.../data/www/.../core/cache/includes/elements/modplugin/12.include.cache.php : 12) PHP warning: Undefined array key "siSession"
По обоим случаям нейросеть пишет, что есть фиксы с правкой исходников. Но не хочется править, чтобы потом не поломать что-то и не затиралось при обновлении.
Если у вас есть возможность — дополните код.

Заранее благодарен.
Wassi Wassinen
20 июня 2026, 23:48
0
@Артур Шевченко добрый вечер, Артур.

При использовании SendIT через сниппет получаю вот такую ошибку:

[2026-06-20 23:44:06] (ERROR @ /var/www/.../data/www/.../core/components/sendit/services/sendit.class.php : 333) PHP warning: Undefined array key "onestepform"
[2026-06-20 23:44:06] (ERROR @ /var/www/.../data/www/.../core/components/sendit/services/sendit.class.php : 333) PHP warning: Undefined array key "onestepform"
[2026-06-20 23:44:06] (ERROR @ /var/www/.../data/www/.../core/components/sendit/services/sendit.class.php : 333) PHP warning: Undefined array key "onestepform"
Вызов сниппета:

{'!RenderForm' | snippet: [
                        'tpl' => 'Footer_Form.tpl',
                        'formName' => 'footerForm',
                        'presetName' => 'footer_form',
                        'hooks' => 'email,FormItSaveForm',
                        'emailTo' => '...',
                        'emailFrom' => '..',
                        'emailTpl' => 'lead_formit_email.tpl',
                        'emailSubject' => 'Заявка с сайта ',
                        'clearFieldsOnSuccess' => 1,
                        'fieldNames' => 'callback_phone==Телефон',
                        'successMessage' => 'Форма отправлена!',
                        'validationErrorMessage' => 'Исправьте ошибки!'
                    ]}

Для сайта пробовал включать php 8.0 и 8.1
Алексей Шумаев
20 июня 2026, 17:54
+1
Только что столкнулся с таким на modx3, ранее 1 раз видел на modx 2.8 — не было времени и мотивации разбираться.
Но проблема есть и она старая.

Клиническая картина такова: в обычном режиме плагин работает нормально, в статическом — реагирует на событие pdoToolsOnFenomInit (хотя оно не отслеживается данным плагином), код плагина игнорируется.
В кэше лежит правильный код плагина.

Пока предположение одно — причиной бага может быть pdoTools исходя из несанкционированной реакции на pdoToolsOnFenomInit. Попробую позже покопать.
Кто встречался — отпишите, будет полезно.
Алексей Шумаев
20 июня 2026, 13:08
0
С обновлением проблема ушла — отлично
Mishiko
19 июня 2026, 23:14
0
Обновление компонента

История изменений MaxNotify 3

1.2.0-pl
  • добавлен канал max в Центр уведомлений miniShop3;
  • добавлена отправка из Центра для нового заказа и смены статуса;
  • поддержаны шаблоны и настройки получателей из Центра уведомлений;
  • добавлены защита от дублей и запись результата отправки в журнал MODX;
  • ключи лексикона miniShop3 для статусов, доставки и оплаты заменяются переводами;
  • чанки перенесены в категорию MaxNotify3, исправлены их UTF-8 описания;
  • при обновлении содержимое изменённых пользователем чанков сохраняется.
Артур Шевченко
19 июня 2026, 21:05
0
Копать надо в браузере. На вкладке сеть, если ответ 500, тогда в логи сервера.
Mishiko
19 июня 2026, 21:03
0
Не знал. попробую реализовать
Николай Савин
19 июня 2026, 10:58
+1
Я так понимаю API для центра уведомлений не стал использовать или не знал? У нас в минишопе есть центр уведомлений с подключаемыми каналами. Вот было бы логично создать MAX канал и подключить его к центру. Разумеется автоматизировано