Артур Шевченко

Артур Шевченко

С нами с 24 мая 2019; Место в рейтинге пользователей: #3
Отправить деньги
08 декабря 2022, 13:59
1
+2
Не знаю откуда ты взял этот код, но вот такой плагин должен решить твою задачу.
switch ($modx->event->name) {
    case 'msOnGetOrderCustomer':
        $profile = $customer->getOne('Profile');
        $profile->set('mobilephone', $profile->get('phone'));
        $profile->save();
    break;
}
06 декабря 2022, 11:31
0
CSS тебе в помощь.
input[type="checkbox"]:disabled{
    display:none;
}
06 декабря 2022, 00:11
0
Если нужно обрабатывать ВСЕ данные товара дополнительно, то, наверное, стоит переписать сниппет msProducts, а не вызывать свой сниппет в чанке.
05 декабря 2022, 11:52
0
$order->get('fieldname')
Но, возможно, предварительно надо будет расширить модель заказа, но это не точно.
04 декабря 2022, 12:17
+2
Либо так
'where' => ["Vendor.name" => $_modx->resource.pagetitle]
Либо так
'where' => '{ "Vendor.name":" '~$_modx->resource.pagetitle~' " }'
03 декабря 2022, 13:34
+1
По-моему мнению это сильно выверт сознания одного конкретного заказчика, поэтому тебе не стоит искать встроенных решений, а написать отдельные запрос в отдельный файл.
03 декабря 2022, 12:00
0
Это я и называю править исходники))) Просто это можно делать грамотно, сделать копию, или нет, писать в оригинале.
03 декабря 2022, 11:51
0
В админке генерируется событие msOnBeforeAddToCart, там можно сделать проверку, если она не пройдёт верни
$modx->event->output('Сообщение об ошибке');
и товар не будет добавлен, а в JS лови ответ коллбэком на Cart.add.response.error или success надо проверять.
03 декабря 2022, 11:36
0
Без правки исходников этого не исправить)))
03 декабря 2022, 11:34
+1
Приведите пример практического кейса, в котором требуется данный функционал. Какую задачу заказчика вы пытаетесь решить? Мы с ребятами обсудим его и, возможно, добавим такой метод в JS, правда в версию 4.x.x. Благо динамическое обновление корзины уже запланировано.
03 декабря 2022, 11:29
0
Даже если бы метод такой был бы в JS, статус корзины не содержит информации о товарах, кроме общего количества.
03 декабря 2022, 01:15
+1
Код приведённый выше делает выборку пользователей из БД по Id или имени и возвращает данные найденных пользователей в виде html таблицы. Если надо тоже самое сделать в Modx, то вот статья о том как делать запросы к БД средствами этой CMS. Данные пользователей хранятся в таблицах modx_users и modx_user_attributes. Джойнить по modx_users.id=modx_user_attributes.internalKey.
01 декабря 2022, 11:37
0
Вообще не очень понимаю, зачем проверять корзину в рандомный момент, если нужные данные можно сохранить. Но если прям очень надо, то в любой момент можно отправить запрос на сервер, на сервере сделать примерно так
$miniShop2 = $this->modx->getService('miniShop2');
$miniShop2->initialize($this->modx->context->key);
$cart = $miniShop2->cart->get();
А если что-то непонятно, значит не разобрались. Дока по minishop2 очень подробная.
30 ноября 2022, 16:57
0
Есть скидка по основным полям товара, в том числе и по производителю, только указывать надо id, а не название.
29 ноября 2022, 22:01
0
Уважаемый, тут гадалок нет. Есть стандартные пути поиска ошибки: консоль браузера, журнал ошибок админки, лог ошибок php на сервере. В одном из этих мест или во всех сразу точно есть записи касающиеся вашей проблемы. И вот если вы их предъявите, можно будет предложить какое-то решение.
29 ноября 2022, 21:58
0
Ошибка 500 всегда должна что-то записывать в лог ошибок сервера. Смотри там.