22 февраля 2026, 17:10 Ето ты сделал?public function getReceiverId() { error_log("🔥🔥🔥 getCustomerId() НАЧАЛО 🔥🔥🔥"); $customer = null; $response = $this->ms2->invokeEvent('msOnBeforeGetOrderCustomer', [//вместо $this-> 'order' => $this,//Вместо $this->order, 'customer' => $customer, ]); if (!$response['success']) { return $response['message']; } if (!$customer) { $data = $this->get();//Вместо $this->order->get(); ... $this->set($data);//Вмесо $this->order->set($data); ... } $response = $this->ms2->invokeEvent('msOnGetOrderCustomer', [//Вместо $this-> 'order' => $this, // Вместо $this->order, 'customer' => $customer, ]); if (!$response['success']) { return $response['message']; } return $customer instanceof modUser ? $customer->get('id') : 0; }возможно что-то упустил Вопросы / Кастомизация minishop'a (номер телефона вместо емейла у пользователя при совершении заказа) 13 +1
21 февраля 2026, 23:53 Етот кусок кода отвечает за то что бы менялась настройка ms2_services <?php if ($miniShop2 = $modx->getService('miniShop2')) { $miniShop2->addService('order', 'my_OrderHandler', '{core_path}components/minishop2/custom/order/my_msorderhandler.class.php'); }После чего у тебя ms2_services должен быть таким {"cart":[],"order":{"my_OrderHandler":"{core_path}components\/minishop2\/custom\/order\/my_msorderhandler.class.php"},"payment":[],"delivery":{"mydelivery":"{core_path}components\/minishop2\/custom\/delivery\/my_msdeliveryhandler.class.php"}}Тебе надо делать только одно из двух либо регистировать клас через консоль либо в сис. настройках. В зависимости от версии minishopа может быть разный путь к msOrderHandler, убедись что етот файл существует require_once MODX_CORE_PATH . 'components/minishop2/handlers/msorderhandler.class.php';А еще в submit ты поменял $user_id = $this->ms2->getCustomerId(); на $user_id = $this->getReceiverId(); Но новый метод ты не назвал getReceiverId Вопросы / Кастомизация minishop'a (номер телефона вместо емейла у пользователя при совершении заказа) 13 +1
19 февраля 2026, 19:45 Расширяешь класс msOrderHandler (поключение) Копируете из старого submit Заменяешь там $user_id = $this->ms2->getCustomerId(); на $user_id = $this->getReceiverId(); Добавляешь новый метод getReceiverId в новообразованный класс и меняешь его как хочешь Вопросы / Кастомизация minishop'a (номер телефона вместо емейла у пользователя при совершении заказа) 13 +1
13 октября 2025, 14:54 В настройках конфигурации блока hero во вкладке Columns, там где выводиш поле advantages, назови его другим именем. Поле Field назови tmp_advantages Вопросы / Попытка украсить вывод Migx внутри Migx: внезапно пропадает содержимое заполенных полей... 7 0
29 декабря 2023, 14:57 у тебя $requestedUrl пустой. Пробуй так $q_var = $modx->getOption('request_param_alias', null, 'q'); $requestedUrl = &$_REQUEST[$q_var]; Вопросы / Как обойти 404 и получить ответ 410 для конкретных URL? 13 0
29 декабря 2023, 14:54 Банальный вопрос: А галочку в сис.событиях поставил на OnPageNotFound? Вопросы / Как обойти 404 и получить ответ 410 для конкретных URL? 13 0
29 декабря 2023, 14:50 Вот такой пример есть Вопросы / Как обойти 404 и получить ответ 410 для конкретных URL? 13 0
29 декабря 2023, 14:46 А редирект в плагине ты делаеш? Вопросы / Как обойти 404 и получить ответ 410 для конкретных URL? 13 0
29 декабря 2023, 14:09 Создайте ресурс который будет отобажаться при 410 ошибке. И в плагине на OnPageNotFound перенаправляйте пользователей на етот ресурс Вопросы / Как обойти 404 и получить ответ 410 для конкретных URL? 13 0
30 октября 2023, 16:27 Создаеш плагин на событие OnPageNotFound switch($modx->event->name){ case 'OnPageNotFound': if("Твоя порверка на соответствие"){ $_GET['ids'] = [12, 13, 14]; //Если нужно передать какие-то даные на страницу переадресации get или post $modx->sendForward("ID ресурса куда делать переадресацию"); }else{ //Оно само перенаправит на 404 //Или може направить куда сам захочешь } break; } Вопросы / Разбор и выборка по параметрам - отображение данных 1 0
29 июня 2023, 01:38 id пусто для события msOnBeforeCreateOrder, так как обект msOrder еще не сохранен на етом етапе. По поводу properties, по умолчанию етот масив пустой, нужно сначала туда что-то положить Вопросы / Как получить поле properties из заказа minishop2? 15 +2
20 июня 2023, 00:04 $dop = [83595,5693,4659]; $option_par = array( 'parents' => $parent, 'limit' => 0, 'tpl' => 'tpl.checkbox', 'where' => [ "Data.is_general" => 1, "OR:id:IN" => $dop ] ); $content = $modx->runSnippet('msProducts',$option_par); Вопросы / Нужна подсказка по where в MsProduct 9 0
18 мая 2023, 00:18 getParentIds возвращает список ИДшек всех родителей ресурса. Только на него ни как не влияет категории отмеченные во вкладке Категории Вопросы / Вывод полей второстепенной категории 36 0
08 мая 2023, 15:59 Разширь клас по этой инструкции, только тебе не надо добавлять поле. Перезапиши buildTVsFilter, потому что там в конце стоит ksort, поменяй сортироку на свою. Вопросы / Сортировка полей фильтра mFilter2 1 0
08 мая 2023, 15:42 'resources' => ('!mSearch2' | snippet: ['returnIds'=>'1','limit'=>'0'] ?: 999999), 'cultureKey' => ('cultureKey' | option), 'context' => $_modx->resource.context_keyНа счет WHERE не уверен 'where' => ["Data.price BETWEEN 20000 and 11122990"]или 'where' => ["Data.price" => "BETWEEN 20000 and 11122990"] Вопросы / Помогите написать на Fenom 5 +1
21 апреля 2023, 13:08 $tvr = $modx->getObject('modTemplateVarResource', array( 'tmplvarid' => $tvId, //ІД TV (не имя) 'contentid' => $resourceId //ІД ресурса )); if ($tvr) { echo $tvr->get('value'); } Вопросы / Вывод тв картинки из сниппета 12 0
18 апреля 2023, 18:26 У снипета msProductOptions, есть параметр sortOptions, с ним надо екпериметировать Вопросы / Как сделать сортировку значений опций msProductOptions? 2 +1
18 апреля 2023, 17:46 Что у тебя на странице /ajax? Скорее всего ты там обращаешся к какому-то снипету. Убедись что вызов снипета НЕ куширумый. Если да, то покажы что твой снипет делает Вопросы / Почему не меняется сессия через ajax? 3 0
18 апреля 2023, 17:04 причин может быть еще много, можеш скинуть доступ, чтобы смому тестить Вопросы / Вывод тв картинки из сниппета 12 +1
18 апреля 2023, 16:55 [[+amp.image_width]] — что-то выводит? Вопросы / Вывод тв картинки из сниппета 12 +1
[Решено] Обновление MODX 3.2.2 компонент FetchIt ломает сайт PHP 8.3 FetchIt пока не адаптирован к MODX 3
Плагин EnvBadge: визуальный индикатор окружения в админке MODX3 Расскажите пожалуйста как вы настраиваете сайт на MODX 3 чтобы был dev, prod, stage. Можете описать workflow? Допустим у меня 80% — это магазины, там клиенты, продажи, все онлай...
MaxNotify Обновление компонента 1.3.0-pl (22.07.2026) — добавлено автоматическое получение полей через msOrder->toArray(); — массивы и объекты безопасно пропускаются; — стандартные...
MyFavorites MyFavorites — 3.0.0-beta Первая версия для MODX Revolution 3.x — компонент полностью переписан с нуля (PHP >= 8.4, namespaced-ядро MODX 3, PSR-4, сервис-ориентированная архит...
mxBoard: канбан-доска для команд, людей и ИИ-агентов в MODX 3 Для начала перейдем на Markdown, а дальше будет видно
MaxNotify3 Вышло обновление 1.3.0-pl (20.07.2026) — добавлены уведомления о заявках FormIt через hook-сниппет maxNotify3FormIt; — добавлены уведомления о заявках SendIt через hook-с...
После чего у тебя ms2_services должен быть таким
Тебе надо делать только одно из двух либо регистировать клас через консоль либо в сис. настройках.
В зависимости от версии minishopа может быть разный путь к msOrderHandler, убедись что етот файл существует
А еще в submit ты поменял $user_id = $this->ms2->getCustomerId(); на $user_id = $this->getReceiverId(); Но новый метод ты не назвал getReceiverId
или