02 октября 2017, 13:55 А почему не сделать расширением корзины? Я так решаю подобные задачи. Пример в доках: docs.modx.pro/components/minishop2/development/service/connection#Пример-подключения-собственного-класса-доставки Вопросы / Как изменить цену в корзине исходя из веса? 5 0
22 сентября 2017, 12:18 Потому пример и не привожу — очень индивидуально. В моих случаях вполне нормально работает. Вопросы / Порядок значений опций товара 10 0
11 сентября 2017, 12:37 Благодарю, лишним точно не будет! Готовые решения / Отправляем данные заказа в Google Analytics (PHP) 15 0
11 сентября 2017, 11:47 Мы же разработчики. Маркетологи задачу поставили, мы реализовали. Если будут новые вводные, возможно придётся вернуться к js, совсем не спорю ) Готовые решения / Отправляем данные заказа в Google Analytics (PHP) 15 0
11 сентября 2017, 11:32 Такой задачи не ставили, не могу сказать, насколько это важно. Если будут данные, отпишусь. Готовые решения / Отправляем данные заказа в Google Analytics (PHP) 15 0
05 сентября 2017, 17:30 Поставил debugParser на тесте. У меня ничего не прибавляется. Зато скидка нормально считается. Смотрите, что у вас. Если используете debugParser с ?debug=1, то имейте ввиду, что если что-то обновляете с галкой очистки кэша, то в первый раз получите кол-во запросов без кэша. Обновим страницу и получим снова с кэшем. Может отсюда +32 запроса? Вопросы / Разница цен (вычесть из старой новую) 21 0
05 сентября 2017, 16:08 А что у вас в этом сниппете? Мне интересно, откуда дополнительные запросы появляются. Вопросы / Разница цен (вычесть из старой новую) 21 0
05 сентября 2017, 16:00 Наверное лучше примерно так: $tv_id = 1; #id нужного TV $resource = $modx->getObject('modResource',$orderProduct->get('product_id')); $tv = $resource->getTVValue($tv_id); /* обновляем значение TV */ $resource->setTVValue($tv_id,'Новое значение'); Вопросы / minishop2 9 0
05 сентября 2017, 14:50 Не за что! На то оно и сообщество. Готовые решения / Minishop2 количество товаров в корзине 31 0
05 сентября 2017, 14:24 Зачем ещё запрос? «Эти параметры дополнительно определяют, какие данные и каким способом будут выводиться.» Т.е. обрабатываются уже полученные результаты запроса, перед отдачей в чанки. Создайте сниппет prepareData <?php if (!is_array($row)) { return '{}'; } $row['discount'] = round(100 - (100 * $row['price']/ $row['old_price'])); return json_encode($row);и вызовите любой сниппет, использующий pdoTools (pdoResource,msProducts в данном случае) с параметром prepareSnippet = prepareData Ну и обработайте $row['price'] и $row['old_price'] перед формулой, если нужно убрать пробелы и т.п. Вопросы / Разница цен (вычесть из старой новую) 21 0
05 сентября 2017, 13:53 Если не верно указать адрес retailCRM (modretailcrm_urlCrm), то будет PHP message: PHP Fatal error: Uncaught Error: Class 'InvalidJsonException' not found in /home/xxx/xxx/xxx/components/modretailcrm/model/modretailcrm/Response/ApiResponse.php:52Ошибка не очевидная… Наверно желательно добавить проверку нужных настроек в начале + добавить исключение, я так понимаю. Новые дополнения и их версии / [modRetailCRM] - Интеграция с RetailCRM 46 0
05 сентября 2017, 13:29 Плагин на msOnCreateOrder. Там есть $order со всеми товарами. Пройтись по ним и для каждого получить значение TV, обновить его, записать новое. Вопросы / minishop2 9 0
05 сентября 2017, 12:09 И ещё… А почему вы постоянно чистите лог? Что там за ошибки? Вопросы / Bad gateway 11 0
05 сентября 2017, 12:08 В данном случае, думаю, нормальный. Как им ещё понять, что происходит, ведь оно происходит именно в админке сайта? На самом деле, важно, что они хотят помочь, а не отписываются, типа «у нас всё ок, смотрите что у вас не работает». Сделайте резервную копию, потом смените пароль. Не вижу причин не доверять поддержке хостинга — вряд ли они подсадят вам что-то. Всё равно, чтобы кто-то смог вам помочь, придётся давать ему доступ в админку, хотя бы для того, чтобы посмотреть что в консоли. Вопросы / Bad gateway 11 0
05 сентября 2017, 11:38 Для админки: а не стоит ли дополнение controlErrorLog? Дело в том, что если error.log слишком большой, то его отдача через controlErrorLog приведёт к ошибке. По лимиту в nginx. Пишу по памяти, поэтому могу ошибаться, но тем не менее — проверьте. Вопросы / Bad gateway 11 0
05 сентября 2017, 11:19 Всем нам поможет prepareSnippet. Делаем там что угодно, например: $row['discount'] = round(100 - (100 * $row['price']/ $row['old_price'])); return json_encode($row);В чанке у вас теперь есть [[+discount]], ну или {$discount} для fenom Вопросы / Разница цен (вычесть из старой новую) 21 0
Возможно ли реализовать возможность предоплаты за доставку на сайте? Так ради этого мне и нужно это все, чтобы клиент платил сразу при оформлении заказа, чтобы избавить себя от мусорных заявок (когда человек оставляет заявку, а предоплату делать не ...
Редизайн сообщества На больших экранах основной текст статьи я бы сделал 18 px. Да и текст комментариев можно таким сделать. Для меня лично 16 — мелковато на больших экранах (в комментариях вообще 15 ...
MiniShop3 1.11.0 при клике на radio идет пересчет итоговой суммы в orderUI, в зависимости от способов(оплаты доставки) я так поняла. попробуй код запуска события поставить ниже чем orderUI, после
ImageOptimizer - WebP/AVIF и responsive <picture> для MODX 3 Дополнение доступно modstore.pro/packages/photos-and-files/imageoptimizer
Localizator3 для MODX 3: перевод полей и TV без отдельного context на язык, Vue 3 + PrimeV... Добавил localizator3_default_language
msInShopNotify Начиная с версии 3.0.0-beta добавлена поддержка MiniShop3 Минимальные требования: PHP 8.4 MODX 3.2 MiniShop3
MaxNotify Обновление 1.2.0-pl (03.07.2026) — добавлены уведомления о заявках FormIt через hook-сниппет `maxNotifyFormIt`; — добавлены уведомления о заявках SendIt через hook-...
[msBonus2] 1.3.0 Бонус-коды, уведомления о сгорании и совместимость с msMultiCurre... Да, планируется. Даже чуть больше, чем просто бонусная система)
Пример в доках: docs.modx.pro/components/minishop2/development/service/connection#Пример-подключения-собственного-класса-доставки
В моих случаях вполне нормально работает.
Если будут новые вводные, возможно придётся вернуться к js, совсем не спорю )
Если будут данные, отпишусь.
Смотрите, что у вас. Если используете debugParser с ?debug=1, то имейте ввиду, что если что-то обновляете с галкой очистки кэша, то в первый раз получите кол-во запросов без кэша. Обновим страницу и получим снова с кэшем. Может отсюда +32 запроса?
Мне интересно, откуда дополнительные запросы появляются.
«Эти параметры дополнительно определяют, какие данные и каким способом будут выводиться.»
Т.е. обрабатываются уже полученные результаты запроса, перед отдачей в чанки.
Создайте сниппет prepareData
и вызовите любой сниппет, использующий pdoTools (pdoResource,msProducts в данном случае) с параметром prepareSnippet = prepareData
Ну и обработайте $row['price'] и $row['old_price'] перед формулой, если нужно убрать пробелы и т.п.
Ошибка не очевидная… Наверно желательно добавить проверку нужных настроек в начале + добавить исключение, я так понимаю.
Там есть $order со всеми товарами. Пройтись по ним и для каждого получить значение TV, обновить его, записать новое.
На самом деле, важно, что они хотят помочь, а не отписываются, типа «у нас всё ок, смотрите что у вас не работает».
Сделайте резервную копию, потом смените пароль.
Не вижу причин не доверять поддержке хостинга — вряд ли они подсадят вам что-то.
Всё равно, чтобы кто-то смог вам помочь, придётся давать ему доступ в админку, хотя бы для того, чтобы посмотреть что в консоли.
Дело в том, что если error.log слишком большой, то его отдача через controlErrorLog приведёт к ошибке.
По лимиту в nginx.
Пишу по памяти, поэтому могу ошибаться, но тем не менее — проверьте.
В чанке у вас теперь есть [[+discount]], ну или {$discount} для fenom