easyComm 3, работа в MODX 3


Приветствую участников сообщества!

В этой заметке я лишь хотел сказать о том, что в магазин Modstore выложена версия easyComm 3.0.1-pl, которая работает в MODX 3!

Наумов Алексей
23 мая 2020, 11:44
modx.pro
606
+17

Встречайте первый компонент реферально-бонусной программы для miniShop2 - msReferralProgramCoin

Компонент агрессивного маркетинга(реферально-бонусная система основанная на кешбэке собственной монетой твоего магазина и персональных промокодах) приводящего клиентов для магазинов основанных на miniShop2 — msReferralProgramCoin

По просьбам пользователей добавлено:
  • В контекстное меню списка товаров добавлены пункты массовой установки и снятия флага участия товара в бонусной программе у выбранных в этом списке товаров
  • Две настройки приветственного бонуса при регистрации:
    1. Само количество бонусных монет зачисляемых на баланс покупателя при регистрации (по умолчанию 0).
    2. Флаг зачисления приветственных бонусов только в том случае если введен валидный промокод пригласившего, что усилит мотивацию ввода промокода пригласившего!

  • Для простоты установки и контроля флаг участия товара в бонусной программе кешбэка добавлен в саму таблицу товаров в дополнение к чекбоксу на вкладке «Свойства товара».
  • Массовое ручное начисление/списание бонусных монет с баланса пользователей.
  • В компонент добавлен пересчет бонусов к начислению и списанию и соответственно пересчет общей суммы заказа с учетом списываемых бонусных монет и стоимости доставки при редактировании заказа в панели управления сайтом!
  • Добавлена настройка количественного отношения бонусной монеты к валюте магазина с показом пользователю сколько одной единице бонусной монеты будет приходиться частей(1, 0.1, ...) валюты магазина.
в версии 1.2.0 будет добавлено:
  • Регистрация по рефссылке в дополнение к уже имеющейся регистрации по персональному промокоду пригласившего.

Пример использования на одном из сайтов клиентов здесь

Уточнение по механизму начисления и списания монет с новыми возможностями:
  • В последней версии 1.1.6 добавлена кратность монет т.е. если в настройке прописать 100 то 1 коин будет стоить 0.01 валюты магазина, и если у покупателя установлен процент кешбэка 3% и покупка на $1000(товарами отмеченными для участия в бонусной) то ему на баланс придет 3000 монет.
  • Оплата корзины идет по настроенному максимальному проценту оплаты корзины т.е. если настроено, что монетами можно оплатить 30% корзины то при покупке на $10 с установленным чекбоксом оплаты монетами сумма заказа станет $7 и на балансе останется 2700 монет из предыдущего пункта.
  • Приветственные монеты можно добавить в панели управления сайтом, но, думаю в версии 1.1.7 добавлю настройку в которой можно внести количество приветственных бонусов при регистрации ;)
  • Статусов золотой, платиновый… нет, но можно доработать за доп оплату.
  • Название монеты сам придумываете в настройках.
Руслан
03 мая 2020, 16:40
modx.pro
2
599
+10

Тестируем PR miniShop2 в GitHub

Всем привет.

Сегодня я хочу поделиться, как тестировать PR пакета miniShop2 ака MS2. PRов выходит все больше и больше и очень хочется с ними познакомиться до релиза, а еще протестировать за одно.



Для этого Вам нужно установленный MODX 2.7.3 (желательно чистый) и установленный пакет PdoTools очень желательно последней версии.

Олег Щавелев
12 мая 2020, 20:42
modx.pro
5
557
+26

SweetAlert2. Красивые уведомления для AjaxForm, Office, Minishop2 и msOneClick

Компонент переопределяет уведомления jGrowl для AjaxForm, Office и Minishop2.



Системные настройки:
  • swal2_position — Позиция модального окна, может быть 'top', 'top-start', 'top-end', 'center', 'center-start', 'center-end', 'bottom', 'bottom-start', или 'bottom-end'. По умолчанию: 'top-end'.
  • swal2_timer — Таймер автоматического закрытия модального окна. Установить в миллисекундах. По умолчанию: 3000.
  • swal2_showconfirmbutton — Если установлено значение false, кнопка 'Подтвердить' не будет отображаться. По умолчанию: false
  • swal2_toast — Следует ли рассматривать предупреждение как тостовое уведомление. Эта опция обычно связана с параметром позиции и таймером. Тосты НИКОГДА не автофокусированы. По умолчанию: true
  • swal2_width — Ширина уведомления. По умолчанию: 19rem
Aleksandr Huz
08 мая 2020, 11:50
modx.pro
6
502
+21

Лайфхак по config.inc

В modx есть файл с конфигом core/config/config.inc.php, в нем кроме установки имени базы, есть еще возможность переопределять настройки:
[[++site_name]]
{'site_name'| config}
<?php
$modx->getOption('site_name');

Но как?


1. Удаляем запись в системных настройках с ключом site_name


Андрей Степаненко
13 мая 2020, 22:08
modx.pro
1
454
+15

Изменение цены в корзине при переоценке

Привет.

Иногда возникает такая ситуация, когда пишите интернет-магазин на MODX и miniShop2 и при этом вы импортируете товары или переоцениваете их с какого-нибудь внешнего сервиса (Например 1С). Проблема которая возникает абсолютно всегда в таких случаях, что цены на товары меняются достаточно часто. В miniShop2 нет (пока нет) события, который бы позволял хендлить события перехода в коризну. Однако, мы можем сделать это на уровне MODX, его событий и API

Создаем плагин cartCheck и вешаем его на событие OnWebPagePrerender. Это событие уже спарсило ресус и его данные, но еще не вывело на страницу — все что нам нужно. В коде, делаем проверку на шаблон страницы. Обычно, корзина имеет свой выделенный шаблон. Далее нам предстоит инициализировать минишоп, получить корзину, модифицировать ее как угодно и назначить обратно. Так же мы сделаем проверку на то, опубликован или удален ресурс и не дадим его купить. На этом, собственно все. Ниже привожу код плагина

<?php
if ($modx->event->name = 'OnWebPagePrerender'){
    if ($modx->resource->id == 5) {
        /** @var miniShop2 $miniShop2 */
        $miniShop2 = $modx->getService('minishop2');
        $miniShop2->initialize();
        $cart = $miniShop2->cart->get();
        foreach ($cart as $key => &$element) {
            /** @var msProduct $product */
            if ($product = $modx->getObject('msProduct', $element['id'])) {
                $element['price'] = $product->get('price');
                if (!$product->get('published') || $product->get('deleted')){
                    unset($cart[$key]);
                }
            }
        }
        $miniShop2->cart->set($cart);
    }
}
Павел Бигель
07 мая 2020, 15:56
modx.pro
8
279
+11

Платные дополнения Sterc уходят в Open Source

Получил на почту анонс с просьбой перевести и разместить у нас тут.

Вот, размещаю, и перевожу как могу. Для начала оригинал:
On August 1st, 2020 all premium MODX Extras created by ​Sterc​ will be free. We have
decided to stop with paid MODX plugins so we can focus on our core-business. This is of
course creating awesome websites and web applications based on MODX and especially
MODX3.

This decision will offer other developers in the MODX community to improve our extras even
faster, as you are used to with our free extras. This also means that we may hire (remote)
MODX developers to work on these extras or ​MODX3​ itself, because we highly value those
two things and we feel they should continue to be improved. Open source doesn’t mean all
work has to be done free of charge. Where some people can offer development resources
by offering their talents and time, other people can fund them. Let’s speed up innovation
together!
Василий Наумкин
29 мая 2020, 15:56
modx.pro
2
278
+19

Работаем на MacOS с Valet Plus

Привет, друзья!

Многие знают, что я всегда был против локальной разработки, и предпочитал использовать виртуальную машину с настоящим GNU/Linux, где всё работает точно так же, как и на хостинге. Никаких XAMPP, WAMP и прочих Denwer.

Но недавно меня познакомили с Valet Plus, и как-то очень уж он мне понравился. Внимание, Valet работает только на MacOS, поэтому дальше стоит читать исключительно обладателям этой ОС.

Итак, Valet Plus, это улучшенная версия обычного Laravel Valet, которым я ни разу не пользовался. Смысл в том, что вам на компьютер устанавливаются PHP, Nginx, DnsMasq и MySQL, а потом постоянно работают в фоне. И когда вы добавляете новый сайт, он просто сразу начинает работать по адресу типа new-project.test. Не нужно править /etc/hosts и колдовать с настройками Nginx, всё работает само.

И самое важное, что работает точно так же, как и на хостинге, потому что MacOS — это Unix-совместимая система, очень похожая на GNU/Linux и FreeBSD, которые крутят 99% всех shared-хостингов. И вы устанавливаете нормальные версии сервисов для неё, а не какие-то специально приготовленные.
Василий Наумкин
28 мая 2020, 07:10
modx.pro
1
257
+18

[РЕШЕНО] Вывод товаров minishop2 по производителям

Как вывести товары в minishop2 с разбивкой по производителям. Чтобы при добавлении нового производителя и товаров от него они автоматически попадали в выборку. И имели следующий вид

Sony
Список товаров Sony

Samsung
Список товаров samsung

LG
Список товаров LG

И так далее.

Спасибо!
Юрий
02 мая 2020, 09:16
modx.pro
154
0