Клиент просит скидку
5% от 5 000 ₽,
10% от 10 000 ₽ или фикс
500 ₽ от 3 000 ₽. В miniShop2 вы, скорее всего, лезли в
msOnGetOrderCost. В MiniShop3 расчёт разбит на три события: корзина, доставка, комиссия оплаты. Скидку на товары вешаем на
msOnGetCartCost.
Документация:
События стоимости.
Что делает msOnGetCartCost
MiniShop3 считает сумму корзины и вызывает плагины на
msOnGetCartCost. В
$scriptProperties['cost'] приходит текущая сумма. Новую сумму задаём через
$modx->event->returnedValues['cost']. Значение подхватится в корзине, на оформлении и в API.
События с префиксом
Before умеют остановить операцию через
output().
msOnGetCartCost только меняет цифру.
MS2: msOnGetOrderCost заменили на msOnGetCartCost, msOnGetDeliveryCost, msOnGetPaymentCost.
Читать далее →
Проблема: замедления Cloudflare (rest.modx.com) на серверах в РФ, не возможность нормально скачивать и обновлять компоненты.
Решение: Модификация системных классов для принудительного использования SOCKS5 прокси.
ДЛЯ MODX 3.1.2 !!!
Для сайтов, которые на VDS, на shared-хостинге работать не будет
Читать далее →
Мало кто знает, что компонент msPromoCode2 можно использовать не только как классическую систему промокодов, но и как полноценную глобальную скидку для всего сайта – применяемую автоматически, без необходимости ввода кода на странице оформления заказа.
При этом стандартная логика работы промокодов полностью сохраняется: если пользователь в корзине введёт промокод с более выгодными условиями, система корректно применит именно его.
Вся реализация настраивается всего в три простых шага.
Читать далее →
Есть ситуация, с которой сталкиваются почти все, кто переносит сайты на MODX или восстанавливает их из бэкапа.
Вы заходите в /manager, вводите логин и пароль — и MODX просто не пускает.
Пароль “точно правильный”. Вы его только что поменяли в базе через MD5 — как советуют старые статьи и форумы.
Но входа нет.
Спокойно. В большинстве случаев MODX не “сломался” — просто вы применили устаревший способ.
Читать далее →
Приветствую вас, мои маленькие любители MIGx, в этой заметке расскажу как можно сделать интерфейс управления кастомной таблицей с фильтрами и самописными процессами на примере таблицы с отзывами.
Читать далее →
Всем привет.
Modx только начал изучать, как легковесную альтернативу друпал для легких проектов.
Давно сижу на этой (ddev) надстройке над docker. Поэтому для меня логично было развернуть modx именно в этой среде.
Процесс довольно легок и прост:
Читать далее →
Всем привет!
В Telegram-чате регулярно поднимается один и тот же вопрос: «Как защититься от спама в форме? У меня стоит FetchIt или AjaxForm, капчу на странице вывел, а спам всё равно летит тоннами!»
Я решил эту проблему в своем компоненте IskWaf (MODX3 / MODX2), и в этой заметке хочу рассказать, как теперь можно обеспечить тотальную защиту вашего сайта.
Читать далее →
Всем привет, тема давно «избитая» но всегда актуальная… Наверняка каждый, наблюдал ситуацию с неправильной работой сайта при вставке эмодзи в тексте. Дело в том, что стандартная кодировка utf8 в MySQL не поддерживает хранение таких символов. Для этого необходимо использовать кодировку utf8mb4, которая позволяет хранить символы, занимающие до 4 байт…
Читать далее →
Компонент EasyComm часто используют в качестве реализации отзывов на сайте. Иногда бывает необходимо мотивировать покупателей писать отзывы об их покупках. Для этого можно использовать компонент msBonus2 и начислять пользователю определённую сумму бонусов на его бонусный счёт.
Читать далее →
Как это по итогу должно выглядеть.
Привожу простейший пример фильтрации товаров по наличию изображения.
ВАЖНО!
Мы не лезем в исходники самого компонента.
Читать далее →