Дмитрий
С нами с 21 марта 2020; Место в рейтинге пользователей: #358Вчера в 12:02
Во второй версии нет автозагрузки ядра, поэтому headless режим реализовать проблематично.
[CLI Package Builder] Разработка пакетов без рутины 3
19 марта 2026, 15:28
Николай, прежде всего — вы молодец.
А про кеширование — можно пойти по правилу Парето.
То есть дать возможность закешировать самое частое — это ...
mFilter 1.2.0 - улучшенное кеширование и скорость 2
15 марта 2026, 20:35
Minishop2 это завершенная история. Архив. Крайне сомневаюсь, что в него будут добавляться какие то изменения. Это просто некому делать. Заинтересованн...
Порядок значений опций товара 10
15 марта 2026, 13:18
На всякий скопирую код для Bootstrap 4 (есть старый проект, лень переезжать на 5 версию):
/* Закрыть модальное окно после отправки */
document.addEve...
[SendIt] Несколько полезных нововведений в версии 1.1.2 27
13 марта 2026, 16:00
Предлагаю в целом обсудить понятие «вариант товара».
Я пришел к тому, что варианты — являются отдельными товарами. Возьмём для примера футболку. У ...
ms3Variants - Реализация вариантов одного товара в MiniShop3 7
12 марта 2026, 22:19
опытным путем выяснил что ошибку валидации радио кнопок можно вылечить добавив в форму еще один вариант
<input type="radio" name="...
Валидация radio кнопок в Sendit 1
11 марта 2026, 09:11
Привет!
Все верно:
1-го нет в магазине modstore и modx.com
2-й платный
mxEditorJs - блочный редактор Editor.js для MODX 3 2
10 марта 2026, 22:13
Все верно, сорян, в своем сообщении написал не то что хотел =)
msGiftCards - дополнение для MODX 2 + miniShop2 для продажи, применения и учета подарочных сертифика... 5
Я взял код из файла /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 товаров
у меня это реализовано, скажем так, циклом в цикле
Можно ли импортировать только какие-то конкретные категории из МС, а не все подряд?
Для особо тупых, объясните =)