Дмитрий
С нами с 21 марта 2020; Место в рейтинге пользователей: #3602 часа назад
Добавил localizator3_default_language
Localizator3 для MODX 3: перевод полей и TV без отдельного context на язык, Vue 3 + PrimeVue 4
Вчера в 23:49
Начиная с версии 3.0.0-beta добавлена поддержка MiniShop3
Минимальные требования:
PHP 8.4 MODX 3.2 MiniShop3
msInShopNotify 6
03 июля 2026, 13:55
Обновление
1.2.0-pl (03.07.2026)
— добавлены уведомления о заявках FormIt через hook-сниппет `maxNotifyFormIt`;
— добавлены уведомлени...
MaxNotify 2
03 июля 2026, 13:42
Да, планируется. Даже чуть больше, чем просто бонусная система)
[msBonus2] 1.3.0 Бонус-коды, уведомления о сгорании и совместимость с msMultiCurrency 7
30 июня 2026, 13:13
Добрый день! Может что-то с правами доступа к файлам? Посмотрите логи в modx, в php. С ходу сложно ответить, ранее не было таких случаев.
FileMan - прикрепление файлов к ресурсам для MODX 3 74
29 июня 2026, 21:27
Большое спасибо за подсказку, но проблема решилась переустановкой.
Зависает корзина минишоп2 2
27 июня 2026, 10:51
Применительно к данному компоненту не знаю, что можно сделать специфического для ИИ. Хотя в целом идея интересная, можно в пакет добавлять скилл или п...
Хватит логгировать как в каменном веке 🪵 5
26 июня 2026, 09:30
Все рекомендации учтены
CommerceBridge1C — двусторонняя интеграция 1С с MODX 3 и miniShop3 по CommerceML 2. 8
25 июня 2026, 21:21
Я и не искал. С новым Formit необходимость в Fetchit и аналогах отпала. Переезд легкий, только событие в js изменить.
FormIt 5.2: нативный AJAX и reCAPTCHA v3 7
Я взял код из файла /core/components/minishop2/model/minishop2/minishop2.class.php
я скопировал этот метод function getReceiverId(), скинул ИИ и описал свои хотелки.
ИИ сгенерировал новый код, я его вставил обратно в файл /core/components/minishop2/model/minishop2/minishop2.class.php и все прекрасно заработало, но когда я расширяю хендлер, у меня перестает работать.
Поправил код по вашему мануалу — все работает, спасибо большое!
с разным расположением файла в зависимости от версии, я уже споткнулся на этом моменте когда подключал свою службу доставки, кстати, в мануале, как раз таки не правильно указано расположения файла (по всей видимости для старой версии)
Я разобрался почему у меня не подключался мой класс, в системных настройках в значении переменной ms2_order_handler_class, у меня было указано «my_OrderHandler » с пробелом на конце, очень было обидно осознать это, когда я два дня пытался разобраться, чой-то мой класс не подключается.
Теперь что касается, кастомного класса. Или, наверное даже больше кастомного метода.
Я начал с того что поменял исходники, и собственно, все у меня работало так как надо.
Телефон приводился к нужному формату, вместо емейла записывался номер телефона, и вообще жизнь прекрасна и удивительна, но!
Когда, все же заработал мой класс, и я сделал, как Вы советовали:
я скопировал метод submit, в нем изменил $user_id = $this->ms2->getCustomerId() на $user_id = $this->getReceiverId();
и новый метод, поменял у него название на getReceiverId()…
тут все работать перестало.
По сути в исходниках я изменял только метод getCustomerId
И был совершенно уверен, что тут у меня не возникнет ни каких проблем.
Собственно в связи с этим вопрос. То был файл в ядре и возможно там различные объекты и прочее достаются иначе, чем это нужно делать через класс, как это есть сейчас у меня?
Помогите, я снова в тупике.
не могу зарегистрировать класс.
содержание самого файла my_msorderhandler.class.php:
согласно священописанию в консоле делаю так:
Пробую, и ничего не меняется. На пару с ИИ добрел до системной настройки, с ключем ms2_order_handler_class и там указал свой класс. Перестало работать вообще. Т.е. тыкаю на кнопку «сделать заказ» на самом сайте и ничего не происходит.
Из чего делаю вывод, что класс мой не зарегистрировался.
Дальше меняю настройку ms2_services.
она у меня выглядела так:
{«cart»:[],«order»:[«my_OrderHandler»],«payment»:[],«delivery»:{«mydelivery»:"{core_path}components\/minishop2\/custom\/delivery\/my_msdeliveryhandler.class.php"}}
т.к. я уже ранее подрубал собственную службу доставки, и она вроде как исправно работает, делаю по образу и подобию с order, хотя ИИ визжит, что так делать нельзя, и у этой настройки должно быть только название класса.
В логах живет вот такая ошибка:
Т.е. я так понимаю, он ищет файл с моей службой почему-то не так где надо, по сути в корне. И как ему указать, где искать — не ведаю.
Вообщем, итог такой, что либо ничего не меняется, либо не работает вовсе.
Что и где я делаю не так?
в документации прописано вот так:
пример подключения собственного класса доставки.
ИИ говорит мне, что интерфейс не нужно подключать для msOrderHandler
т.е. этот кусок получается лишний в моем случае?
я уже как-то подключал свой обработчик доставки.
имеет ли значение в какой папке будет лежать новый файл my_msOrderHandler
метод это когда начинается с «public function»?
Т.е. посути в новом файле должно остаться метод submit с теми изменениями что вы написали и мой метод, который я постил в предыдущем комментарии?
замечательно отправляет письмо на мейл, письмо приходит и все в порядке.
мой_домен: v=spf1 include:_spf.timeweb.ru ~all
_dmarc.мой_домен: v=DMARC1; p=quarantine;
dkim._domainkey.мой_домен: k=rsa;p=MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQC4HhKuDyzHBH6pVnfIxDDKhney5XIWQXFY2HlCrdfDKtj0wzbzhfCBdkgiRFng8SCXE2jB93e+ZsmbMoJ2WeADqa5LdRo9IPonjeAPUjh7KxV04psRZO/lVmLeQRjxw+exXRml+9797Yqo09BUNedNv0QHGAaYFj+pwgF4Hfg6FQIDAQAB
Не знаю, что означает эта абракадабра =)
Этого достаточно? или нужны еще какие-то доп настройки?
А то как пишете вы, у меня так и сделано…
т.е. по всей видимости, pdoResources подставляет эту запятую в каком-то своем формате. =(
Вот чего говорит: Ошибка анализа: в декларации массива отсутствует символ "," или "]", хотя сам код выглядит, так как нужно
&outputSeparator=`,` добавит запятую после каждого прохода цикла?
И вот еще что, в описании pdoResources не нашел &templates… что это дает?
----категория 1 (7)
--------товары около 100 шт
----категория 2 (8)
--------товары около 100 шт
и так далее
мне нужно вывести из каждой категории по 16 товаров
у меня это реализовано, скажем так, циклом в цикле