Пошаговые инструкции

Написать заметку

Скидка от суммы корзины в MiniShop3: плагин на msOnGetCartCost за 20 строк

Клиент просит скидку 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.
Читать далее →

Инструкция: Настройка SOCKS5 прокси в MODX3 для работы с репозиторием

Проблема: замедления Cloudflare (rest.modx.com) на серверах в РФ, не возможность нормально скачивать и обновлять компоненты.

Решение: Модификация системных классов для принудительного использования SOCKS5 прокси.

ДЛЯ MODX 3.1.2 !!!
Для сайтов, которые на VDS, на shared-хостинге работать не будет

Читать далее →

[msPromoCode2] Применение скидки при входе на сайт

[msPromoCode2] Применение скидки при входе на сайт


Мало кто знает, что компонент msPromoCode2 можно использовать не только как классическую систему промокодов, но и как полноценную глобальную скидку для всего сайта – применяемую автоматически, без необходимости ввода кода на странице оформления заказа.

При этом стандартная логика работы промокодов полностью сохраняется: если пользователь в корзине введёт промокод с более выгодными условиями, система корректно применит именно его.

Вся реализация настраивается всего в три простых шага.
Читать далее →

Почему в новых версиях MODX не работает сброс пароля через MD5 и как восстановить доступ в manager

Есть ситуация, с которой сталкиваются почти все, кто переносит сайты на MODX или восстанавливает их из бэкапа.

Вы заходите в /manager, вводите логин и пароль — и MODX просто не пускает.
Пароль “точно правильный”. Вы его только что поменяли в базе через MD5 — как советуют старые статьи и форумы.
Но входа нет.

Спокойно. В большинстве случаев MODX не “сломался” — просто вы применили устаревший способ.
Читать далее →

[MIGxDB] Создание интерфейса управления кастомной таблицей в админке

Приветствую вас, мои маленькие любители MIGx, в этой заметке расскажу как можно сделать интерфейс управления кастомной таблицей с фильтрами и самописными процессами на примере таблицы с отзывами.
Читать далее →

modx3 (modx2) + composer + ddev

Всем привет.
Modx только начал изучать, как легковесную альтернативу друпал для легких проектов.
Давно сижу на этой (ddev) надстройке над docker. Поэтому для меня логично было развернуть modx именно в этой среде.

Процесс довольно легок и прост:
Читать далее →

Спам в формах AjaxForm/FetchIt? Защищаем ЛЮБЫЕ точки входа в MODX с помощью IskWaf

Спам в формах AjaxForm/FetchIt? Защищаем ЛЮБЫЕ точки входа в MODX с помощью IskWaf


Всем привет!

В Telegram-чате регулярно поднимается один и тот же вопрос: «Как защититься от спама в форме? У меня стоит FetchIt или AjaxForm, капчу на странице вывел, а спам всё равно летит тоннами!»

Я решил эту проблему в своем компоненте IskWaf (MODX3 / MODX2), и в этой заметке хочу рассказать, как теперь можно обеспечить тотальную защиту вашего сайта.

Читать далее →

Правильное изменение кодировки БД на utf8mb4, для корректной работы эмодзи и т.п.

Правильное изменение кодировки БД на utf8mb4, для корректной работы эмодзи и т.п.


Всем привет, тема давно «избитая» но всегда актуальная… Наверняка каждый, наблюдал ситуацию с неправильной работой сайта при вставке эмодзи в тексте. Дело в том, что стандартная кодировка utf8 в MySQL не поддерживает хранение таких символов. Для этого необходимо использовать кодировку utf8mb4, которая позволяет хранить символы, занимающие до 4 байт…
Читать далее →

[msBonus2+EasyComm] Начисление бонусов за отзывы

[msBonus2+EasyComm] Начисление бонусов за отзывы

Компонент EasyComm часто используют в качестве реализации отзывов на сайте. Иногда бывает необходимо мотивировать покупателей писать отзывы об их покупках. Для этого можно использовать компонент msBonus2 и начислять пользователю определённую сумму бонусов на его бонусный счёт.
Читать далее →

Расширяем фильтрацию в категории товаров админ панели

Расширяем фильтрацию в категории товаров админ панели
Как это по итогу должно выглядеть.


Привожу простейший пример фильтрации товаров по наличию изображения.
ВАЖНО!
Мы не лезем в исходники самого компонента.
Читать далее →