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

[msPromoCode] Кейс. Именные промокоды для пользователя


На днях меня спросили, как в msPromoCode можно применить купон только для группы Users. Набросав на коленке плагин и поделившись им с пользователем, я начал размышлять, как бы это упаковать в кейсик. Размышления навели меня на именные купоны. Думаю, пригодится многим.
Павел Гвоздь
01 июля 2018, 07:58
modx.pro
3
3 950
+6

Изменяем форму заказа minishop2

За год работы с минишопом я понял одну вещь — никто не знает как просто и быстро кастомизировать стандартную форму заказов. Для меня это довольно частая задача, по этому соберу тут несколько приемов которыми сам пользуюсь:


Pavel Zarubin
22 апреля 2018, 02:16
modx.pro
96
7 963
+41

Как написать модуль оплаты для Minishop2

Привет всем :). Я не с первого раза разобрался как написать модуль оплаты для Minishop2. Поэтому решил сделать небольшую инструкцию. Не во всем правда разобрался, но надеюсь в комментариях подскажут.
Александр Туниеков
08 апреля 2018, 23:44
modx.pro
10
4 365
+7

Новая Google reCAPTCHA(v2) для Office

По примеру Новая Google reCAPTCHA(v2) для FormIt сделал reCAPTCHA для office.
Александр Туниеков
11 января 2018, 17:08
modx.pro
16
3 499
+13

Правим проблему работы кастомного класса mFilter2 при выносе папки core за корневой каталог

На днях обнаружил в mSearch2 при вызове сниппета mFilter2 и выставлении в настройке «mse2_filters_handler_class» кастомного класса (соответственно создав в необходимой директории файл и расширив в нем стандартный класс филтров), при вынесении папки core за корневой каталог (к примеру на уровень выше), то мы получаем неправильные пути для поиска файлов кастомных классов в mFelter2, поэтому наш кастомный класс не работает. Вот к примеру:

modx_core_path у нас:
/home/s12187/core/
modx_base_path у нас:
/home/s12187/www/
Получаем ошибку в логе:
[2017-12-14 08:53:22] (ERROR @ /home/s12187/core/components/msearch2/model/msearch2/msearch2.class.php : 243) [mSearch2] Custom path is not exists: "/home/s12187/www/home/s12187/core/components/msearch2/custom/filters"
Т.е. если папка core у нас находится на уровень выше, чем modx_base_path, а не находится в нем, то путь до папки с кастомными файлами mSearch2 склеивается с modx_base_path и на выходе мы получаем, что файлы кастомных классов ищутся в несуществующем каталоге:
/home/s12187/www/home/s12187/core/components/msearch2/custom/filters
Хотел написать в ТП на modstore, чтоб Василий поправил это в последующих версиях, но там уже закончился срок поддержки, а продлевать нет необходимости, т.к. проблему решил сам, но хотелось бы, чтоб в следующей версии это было решено из коробки, так что под катом выкладываю временное решение для тех, кто с этим тоже столкнется и в надежде, что Василий тоже увидит и поправит в следующих версиях.
Роман Воропаев (Volk)
14 декабря 2017, 07:47
modx.pro
2
1 854
+8

Используем совместно msDiscount и msOptionsPrice2

Если есть задача одновременно использовать варианты товаров с разными ценами и скидки/купоны, то в modstore есть качественные и удобные компоненты msDiscount и msOptionsPrice2. Но они «из коробки» несовместимы — вы не получите в каталоге/корзине цены со скидками.
Под катом инструкция для совместного использования.
Алексей Шумаев
13 ноября 2017, 06:47
modx.pro
3
1 876
+4

Подготавливаем ЛК для "ГдеПосылка"


Это продолжение статей по работе с заказами MS2, в последней статье я обещал, что расскажу как интегрировать сервис «ГдеПосылка» в Minishop2, а пока я жду пока очухается администрация «ГдеПосылка» чтобы дать мне доступ к API подготовим почву для интеграции, что мы будем делать:

  1. Добавим новое поле в заказы minishop2
  2. Сделаем вывод для пользователей их историю заказов без extJS и каких либо дополнений, на чистом pdoTools
  3. Научимся делать leftJoin и select на pdoTools и pdoFetch
  4. Бонусом идут сразу готовые стили для всего этого добра и написанный JS
За стилизацию заказов я брал пример с modstore, я надеюсь никто не обидится, потому что мне кажется что у нового дизайна модстора очень удачное стиливое решение истории заказов

За объяснением кода — под кат, за кодом на GitHub
Pavel Zarubin
19 октября 2017, 11:37
modx.pro
17
5 765
+8

Сервисы доставки СДЭК, ПР и EMS для MS2 ч.2

Это вторая часть статьи, где будет разобран только php код и работа с poscalc, вся база js кода у нас готова и работает в первой части статьи. Для тех, кто не хочет читать, добро пожаловать сразу на GitHub
Pavel Zarubin
05 октября 2017, 12:03
modx.pro
4
4 249
+12

Написание сервисов доставки СДЭК, ПР, EMS для MS2

Это первая часть статьи и она повещена целиком и полностью расчету СДЭК.
Вторая часть тут

Статья рассчитана на новичков, которые плохо понимают php и js код, старички могут сразу перейти на GitHub

Прежде всего хочу предупредить что я никого не хочу оскорбить или унизить, моя история началась пол года назад с покупки дополнений msCDEK и msRussianPost и в течении полугода мы теряли деньги, клиентов и решали проблемы до тех пор пока и мне и автору этих дополнений это не надоело.

Как говорит Василий «Критикуешь — предлагай» и под катом я расскажу как сделать самому всего в пару десятков строк кода эти сервисы доставки, а пока опишу проблемы, которые решает мой вариант реализации
  • msRussianPost у меня не считала доставку заказной бандероли и заказной бандероли 1 класса
  • Если стоит метод доставки например самовывоз, то автодополнение городов не работает, а консоль начинает усыпать ошибками которые крашут вообще весь расчет доставки
  • В заказ в админке не пишется город
  • Надпись о времени и цене доставки не удаляется при смене метода доставки
  • Дополнительная цена не плюсуется к расчету доставки, а плюсуется к итоговой цене
И еще с десяток мелких проблем, из-за которых лично наш магазин с 5-10 заказами в день терял клиентов
Это не доработка решений вышеуказанных решений, а полноценная инструкция по созданию своих сервисов доставки на базе MS2. В общем не буду тянуть кота за хвост, за объяснением кода под кат
Pavel Zarubin
05 октября 2017, 00:15
modx.pro
16
9 246
+16

mSearch2 - сортировка кастомным select 'ом

Возникла необходимость кастомизировать стандартную сортировку компонента mSearch2.
Cортировка имела следующий вид:
Как оказалось компонент не может работать с select, а работает только тегом a. Ну да ладно, попробуем исправить это.
На сайте modx.pro в ветке Вопросы нашел вопрос Как сделать сортировку через select? от пользователя DimenSi. Вопрос частично решен если бы не одно НО
перестали работать фильтры, фильтрация срабатывает только после сортировки. Т.е. меняешь ценовой диапазон → ничего, после этого меняешь сортировку → срабатывает и сортировка и фильтр.

ПЛАН РАБОТЫ

  • Установка кастомного селеста
  • Написание скрипта для взаимодействия сортировки с компонентом
Roman
14 сентября 2017, 08:33
modx.pro
28
7 312
+5