30 минут назад
Обновил компонент
1.1.0-pl
— добавлена прямая интеграция с официальным MAX Business API;
— добавлен выбор провайдера между MAX Business и ruma...
MaxNotify 1
4 часа назад
Это решает простейший JS скрипт, который при загрузке страницы помечает первый в списке способ оплаты. Во втором минишопе это тоже было сразу в коробк...
MiniShop3 1.11.0 12
11 июня 2026, 21:58
Позже, может размещу и на docs.modx.pro, пока времени нет
IskWaf 3.2.0 — большое обновление WAF для MODX 3 2
11 июня 2026, 15:40
Добрый день! А можно как-то в чанк сниппета msOptionsPrice.option вывести цену? prnt.sc/cfX_WTwINTVL
Сам чанк {foreach $options as $name => $...
[msOptionsPrice2] - Модификации продукта. 375
11 июня 2026, 15:36
Для последних версий (msOptionsPrice2 — 2.5.22-beta и msDiscount — 1.3.13-pl) не работает
Используем совместно msDiscount и msOptionsPrice2 1
10 июня 2026, 08:31
rumaxbot.ru/email/verification-notification
выдает ошибку:
# Symfony\Component\HttpKernel\Exception\MethodNotAllowedHttpException - Method Not ...
[MAX bot] отправляем сообщение в бот MAX на изи 9
05 июня 2026, 09:38
Я не знаком с cityField. Смотрите, чем отличаются формы и запросы на сервер. Если разные контексты — то проверьте, как настроены источники файлов.
easyComm 1.11.0. Прикрепление файлов (фотографий) 30
04 июня 2026, 20:21
У кого нет юрлица, то можно использовать бота-прослойку: modx.pro/development/25531
Уведомления о заказах minishop в MAX 1
01 июня 2026, 18:39
После обновления на 5.2, в системных настройках FormIT все описания настроек стали повторять названия ключей, то есть описания затерлись
FormIt 5.2: нативный AJAX и reCAPTCHA v3 4
Всего 125 952 комментария
Версия модуля 1.4.0
Необходимо обновить наименования товаров.
Выбираем Тип импорта — Обновить данные товаров
Соответствие Столбца Название — pagetitle
Запускаем импорт.
В логе запись апдейтится, но там нет поля pagetitle:
[2026-02-28 14:43:45] (INFO @ /var/sites/core/components/msimportexport/model/msimportexport/msie.class.php: 2905) Update SQL:
UPDATE `modx_ms2_products` AS msProductData SET `price`='26420',`old_price`='0',`article`='',`sklad`=0,`weight`='0',`color`='[\"\\u0414\\u0443\\u0431 \\u043a\\u0430\\u043f\\u0443\\u0447\\u0447\\u0438\\u043d\\u043e\"]',`size`='[\«2000x600\»,\«2000x700\»,\«2000x800\»,\«2000x900\»]',`made_in`='',`vendor`=4,`steklo`=0,`nestandart`=1,`garanty`=5,`available`=2,`new`=0,`favorite`=0,`popular`=0,`ms2colors_common_id`=1,`ms2colors_collection_id`=68,`mk_price_box`=5870,`mk_price_nalich`=5580,`mk_subtype`=1,`mk_kapitel`=0,`mk_material`=8,`mk_style`=2,`mk_type_open`='[\«1\»,\«2\»,\«3\»,\«4\»]' WHERE `msProductData`.`id` = 1567
Подскажите, пож-та, как поправить.
Спасибо.
Файл импорта:
ID; Название; Опубликован; Цена; Старая цена; Артикул;sklad; Вес; Цвет; Размер; Страна; Производитель;steklo;nestandart;garanty;available; Новый; Особый; Популярный;ms2colors_common_id;ms2colors_collection_id;mk_price_box;mk_price_nalich;mk_subtype;mk_kapitel;mk_material;mk_Стайл;mk_type_open;ms2colors_common_name;ms2colors_collection_name
1567; Футура 311;1;26420.00;0.00;;0;0.000; Дуб капуччино;2000x600|2000x700|2000x800|2000x900;;4;0;1;5;2;0;0;0;1;68;5870;5580;1;0;8;2;1|2|3|4; Светло коричневый; Дуб капучино
Я взял код из файла /core/components/minishop2/model/minishop2/minishop2.class.php
я скопировал этот метод function getReceiverId(), скинул ИИ и описал свои хотелки.
ИИ сгенерировал новый код, я его вставил обратно в файл /core/components/minishop2/model/minishop2/minishop2.class.php и все прекрасно заработало, но когда я расширяю хендлер, у меня перестает работать.
Поправил код по вашему мануалу — все работает, спасибо большое!
Сегодня выложим — была проблема с защитой и ключами + был занят работой над minishop3 и PR к MODX github.com/modxcms/revolution/pulls/Ibochkarev
@Андрей дополнение в магазине
Я делаю систему с нейросетью используя modExtra и PVExtra, так как IDE заточены под файлы и в базу не лезут. А в MODX пользовательский код обычно в базе. То есть ставлю чистый MODX. Делаю на нем ЧПУ и делаю компоненты которые заполняют сайт. Возможно имеет смысл подключить к нейросети MCP MySQL и чтоб нейросеть напрямую редактировала страницы и шаблоны. Чанки, сниппеты и тв в последнее время не использую. Вместо сниппетов vue компоненты к которым чанки не особо прикрутишь. А вместо тв проще нужные таблицы сразу писать.
Мне проше сразу писать компоненты. Некоторые потом можно отдельно выкладывать. И проще в прод вносить изменения. Просто поставил компонент и нужные правки применились. И не надо делать деплой всего сервера. Правки по компонентам и нужно поставить лишь тот компонент в котором изменения.
С нейросеть у меня 2 метода писать код:
1. Точечное промт-програмирование. Например, пишешь промпт: здесь отсортируй массив по возрастанию ранга наряда. И нейросеть вставляет нужный код.
2. Вайб-кодинг. Есть задача которую непонятно как сделать и пишешь, например, нужно сделать дополнительные фильтры чекбоксы которые выводят список значений в таблице и при выборе которых в таблице фильтруется по этим выбранным значениям. И нейросеть сама разбирается что сделать и пишет код. Такой промпт я как-то задавал и потом 3 часа разбирался почему основные фильтры не работают. Оказалось что нейросеть решила, что если есть допфильтры, то основные не нужны :-).
3 месяц писал с Kilo Code для VSCode. Но постепенно работа через API Claude стала забирать все больше денег. Сейчас использую Claude Code для VSCode с подпиской MAX. Она втрое дешевле должна выходить. Вчера сочинял с ним план внедрения в miniERP продажи перепродоваемых товаров (вместе с товарами которые мы изготавливаем). Перед использованием вайб-кодинга лучше с ИИ сочинить план разработки.
Ну вкратце так. Более подробно пока желания писать нет. Хотя есть моменты которые хочется обсудить или написать статьи, но прям сейчас только то что написал.
с разным расположением файла в зависимости от версии, я уже споткнулся на этом моменте когда подключал свою службу доставки, кстати, в мануале, как раз таки не правильно указано расположения файла (по всей видимости для старой версии)
Я разобрался почему у меня не подключался мой класс, в системных настройках в значении переменной ms2_order_handler_class, у меня было указано «my_OrderHandler » с пробелом на конце, очень было обидно осознать это, когда я два дня пытался разобраться, чой-то мой класс не подключается.
Теперь что касается, кастомного класса. Или, наверное даже больше кастомного метода.
Я начал с того что поменял исходники, и собственно, все у меня работало так как надо.
Телефон приводился к нужному формату, вместо емейла записывался номер телефона, и вообще жизнь прекрасна и удивительна, но!
Когда, все же заработал мой класс, и я сделал, как Вы советовали:
я скопировал метод submit, в нем изменил $user_id = $this->ms2->getCustomerId() на $user_id = $this->getReceiverId();
и новый метод, поменял у него название на getReceiverId()…
тут все работать перестало.
По сути в исходниках я изменял только метод getCustomerId
И был совершенно уверен, что тут у меня не возникнет ни каких проблем.
Собственно в связи с этим вопрос. То был файл в ядре и возможно там различные объекты и прочее достаются иначе, чем это нужно делать через класс, как это есть сейчас у меня?
Помогите, я снова в тупике.
После чего у тебя ms2_services должен быть таким
Тебе надо делать только одно из двух либо регистировать клас через консоль либо в сис. настройках.
В зависимости от версии minishopа может быть разный путь к msOrderHandler, убедись что етот файл существует
А еще в submit ты поменял $user_id = $this->ms2->getCustomerId(); на $user_id = $this->getReceiverId(); Но новый метод ты не назвал getReceiverId