17 октября 2015, 20:40 Добавляйте это как отдельный товар в корзине. Новые дополнения и их версии / [msOptionsPrice2] - разные цены для опций товара 142 0
15 октября 2015, 14:27 1) В этот столбец записывается привязанный к товару источник файлов. Новые дополнения и их версии / Релиз Minishop 2.2 pl и 2.3 alpha. Отчет о работе 108 0
14 октября 2015, 23:51 Есть такое дело. Программисты из Санкт-Петербурга, разыскиваю вас! Работа в офисе на полный день. Объявления о работе / Программист MODX в Simple Dream 42 +2
14 октября 2015, 20:23 Создай issue в официальном репозитории. Явно напрашивается подстановка расширения от типа файлов по умолчанию. Вопросы / Странная работа процессора resource/update 1 +1
14 октября 2015, 15:59 Причина верная. Правильнее использовать параметры &prepareTVs и &processTVs. Вопросы / Вывод tv чекбокс разница getRes.. и pdoRes... 6 0
13 октября 2015, 17:32 modx.pro/solutions/6624-finished-build-on-modx-revo/#comment-47490 Готовые решения / Готовый блог на Modx Revo (две версии) 23 +1
12 октября 2015, 17:16 $cartArray = $cart->get(); // Массик товаров в корзине $cartProduct = $cartArray[$key]; // Один товар в корзинеТы получаешь сначала весь массив корзины, затем обращаешься только к одному ее элементу, который определен ключом $key — тот элемент, с которым производится действие (добавление, изменение) в данный момент. Но задача — обработать все элементы. Соответственно, необходимо пройти по всему массиву и обработать его: foreach($cartArray as $cartProduct) { // Запускаем цикл прохода по всем товарам в корзине $price = $cartProduct['price']; // Один элемент корзины }Следующий важный момент: изменять необходимо оригинальную цену, а не ту, которая в корзине. Пример: один раз изменили цену при достижении 5 шт., пользователь погулял по сайту, в корзине стало 20 шт. — если при втором изменении мы возьмем за основу цену, которая записана в корзине, скидка получится чрезмерной. Если 2 варианта решения: 1) В options товара в корзине записывать оригинальную цену при добавлении 2) Каждый раз получать оригинальную цену из объекта товара Второй вариант рациональнее. switch ($modx->event->name) { case 'msOnAddToCart': case 'msOnChangeInCart': $cartArray = $cart->get(); $cartStatus = $cart->status(); $totalCount = $cartStatus['total_count']; if ($totalCount < 5) $coeff = 1; elseif ($totalCount < 10) $coeff = 0.8; elseif ($totalCount < 20) $coeff = 0.7; else $coeff = 0.6; foreach ($cartArray as &$cartProduct) { if ($product = $modx->getObject('msProduct', $cartProduct['id'])) { $cartProduct['price'] = $product->price * $coeff; } } $cart->set($cartArray); break; } Вопросы / Не работает пересчет цен в корзине 8 +2 1
12 октября 2015, 03:32 foreach ($tmp as $cartProduct) {} тебе поможет. Если необходимо подробнее, скажи — напишу завтра с ПК. Вопросы / Не работает пересчет цен в корзине 8 +1
07 октября 2015, 21:25 Велосипед совершенно точно нужен! Сергей, это великолепная вещь и крайне полезная!!! Пакет собирай обязательно. Новые дополнения и их версии / Редактирование выделенных элементов 69 +5
07 октября 2015, 11:34 «Костыли-сниппеты» — это такие вложенные вызовы. Из-за особенностей работы парсера необходимо избегать подобной вложенности. Либо через чанки (в простых случаях), либо через сниппеты. Если уж хочется использовать логику в шаблонах, смотрите в сторону Fenom — он больше возможностей предоставит. Вопросы / Вызов сниппета внутри фильтра(модификатора) 12 0
07 октября 2015, 10:09 В классе корзины переопредели 3 метода: get(), status(), clean(). Сниппет вывода корзины сделай свой, удобнее всего скопировать msCart и его изменить. Сохранение принадлежности товара к определенному контексту в оформленном заказе — самое простое, достаточно при добавлении в корзину передавать эту информацию в options товара, дальше справится штатный механизм. Фактически, задача решается за несколько часов. Вопросы / 2 корзины на одном сайте 10 0
05 октября 2015, 01:56 Если будет транспортник, зачем заставлять пользователя создавать ТВ? Их можно тоже создать при установке и связать с созданными шаблонами. Готовые решения / UPD 19/10/2015: Готовые сборки на Modx Revo 87 +1
30 сентября 2015, 00:53 Есть заготовка по интеграции Amo и MODX. Напишите на почту (ссылка в профиле), обсудим детали. Объявления о работе / Интеграция сайта с amoCRM 3 0
23 сентября 2015, 20:31 Владимир, написал в скайп. Вопросы / mspUniteller - есть желающие на тест? 6 0
22 сентября 2015, 03:06 Посмотрите Lingua. Новости и события / Более 100 дополнений в Modstore.pro 12 +1
21 сентября 2015, 20:51 Напишите на поту (ссылка в профиле). Объявления о работе / Модуль Оптовых цен 10 0
21 сентября 2015, 16:53 Спасибо за напоминание. Вопросы / кол-во документов, написанных пользователем 17 0
21 сентября 2015, 16:50 Пока страница с написанным и неотправленным комментарием висела, уже все подробно обсудили :) Вопросы / кол-во документов, написанных пользователем 17 0
21 сентября 2015, 16:49 В таблице modx_site_content хранятся объекты modResource и его наследники. Вопросы / кол-во документов, написанных пользователем 17 0
14 сентября 2015, 15:28 Добавьте еще одного поставщика с новым ключом. Вопросы / Не совпадают адреса электронной почты в рассылке 5 0
Возможно ли реализовать возможность предоплаты за доставку на сайте? В любом случаем стандартный флоу минишоп2 рассчитан на оплату по ссылке, т.е. чтобы получить информацию об оплате, нужно чтобы заказ существовал. Чтобы сделать иначе, нужно использ...
Редизайн сообщества На больших экранах основной текст статьи я бы сделал 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... Да, планируется. Даже чуть больше, чем просто бонусная система)
Программисты из Санкт-Петербурга, разыскиваю вас!
Работа в офисе на полный день.
Явно напрашивается подстановка расширения от типа файлов по умолчанию.
Правильнее использовать параметры &prepareTVs и &processTVs.
Следующий важный момент: изменять необходимо оригинальную цену, а не ту, которая в корзине. Пример: один раз изменили цену при достижении 5 шт., пользователь погулял по сайту, в корзине стало 20 шт. — если при втором изменении мы возьмем за основу цену, которая записана в корзине, скидка получится чрезмерной.
Если 2 варианта решения:
1) В options товара в корзине записывать оригинальную цену при добавлении
2) Каждый раз получать оригинальную цену из объекта товара
Второй вариант рациональнее.
Сергей, это великолепная вещь и крайне полезная!!!
Пакет собирай обязательно.
Сохранение принадлежности товара к определенному контексту в оформленном заказе — самое простое, достаточно при добавлении в корзину передавать эту информацию в options товара, дальше справится штатный механизм.
Фактически, задача решается за несколько часов.