msMCD

Динамическое обновление мини-корзины miniShop2
Версия 2.2.2-pl
Дата выпуска 11.07.2025
Загрузки 671
Просмотры 7 851
Внимание, этот компонент несовместим с MODX 3.
Оригинальный компонент разработан Маратом Марабаром. Передан сообществу MODX 13 июня 2023 года.

Компонент msMCD (mini cart dynamic) для miniShop2 — это рефакторинг старого компонента msMiniCartDynamic с рядом улучшений и предназначен для обновления мини корзины на лету — динамически. msMiniCartDynamic поддерживаться больше не будет.

Теперь не нужно самостоятельно добавлять скрипты на страницу, msMCD делает это сам. Все чанки переписаны на Fenom и Bootstrap5.

Возможности msMCD


  1. Динамическое обновление мини-корзины
  2. Добавление товара в корзину как кнопкой, так и ручным вводом, а также кнопками -/+. Опционально
  3. Анимация добавления товара (полёт картинки). Опционально
  4. Возможность выбора полей для передачи в мини-корзину. Опционально
  5. Удаление выбранного товара
  6. Изменение количества товара в мини-корзине
  7. Работа с разными контекстами

Сниппет msMCDMiniCart

Сниппет msMCDMiniCart — выводит текущую мини-корзину

После установки компонента, вместо стандартного сниппета msMiniCart воспользуйтесь msMCDMiniCart,
который идёт с компонентом msMCD.

{'!msMCDMiniCart' | snippet: [
    'img' => '50x50',
]}

Параметры msMCDMiniCart:

  • tpl[msMCDMiniCartRowTpl], чанк для каждого результата
  • tplOuter[msMCDMiniCartOuterTpl], чанк обёртка
  • jsUrl — путь до файла со скриптами
  • img — картинка товара. Указывается так же как и в источнике файлов, например: 50x50

Вывод товаров

В комплекте с msMCDM идут идут два примера чанков для вывода товаров: msMCDProductsRowTpl и msMCDProductsRowInputTpl. Например для добавления товара в корзину кнопкой, вызов сниппета msProducts будет таким:

{'!msProducts' | snippet: [
    'tpl' => 'msMCDProductsRowTpl',
]}

Соответственно для добавления товара кнопками/ручным вводом таким:

{'!msProducts' | snippet: [
    'tpl' => 'msMCDProductsRowInputTpl',
]}

Эти чанки служат только для примера, и обратите внимание, что картинка товара находится в теге form. Это необходимо для анимации добавления товара (полёт картинки).

Сниппет msMCDCount

Сниппет msMCDCount — для добавления товара, вместо кнопки выводит инпут с -/+.
Вызов этого сниппета прописан в чанке msMCDProductsRowInputTpl.

Параметры msMCDCount:

  • tpl[msMCDCountTpl], чанк для вывода инпута
  • jsUrl — путь до файла со скриптами

Системные настройки


msmcd_fields_mini_cart — Поля, которые необходимо передать в мини корзину, по умолчанию: pagetitle. Доступны все поля объектов: msProduct(modResource), msProductData, msVendor
В мини-корзине есть всегда: id, price, count, options, weight, ctx, sum, img

msmcd_animate_mini_cart — Включает анимацию добавления товара, по умолчанию: выключено.
msmcd_dropdown_mini_cart — Открывать мини-корзину при добавлении товара, по умолчанию: выключено
msmcd_change_count_mini_cart — Включает возможность изменять количество товара в мини-корзине

2.2.2-pl (11.07.2025)

  • Исправлен баг с удалением товаров после обновления страницы
  • Исправлен баг с неверным подсчетом товаров в корзине

2.2.1-pl (04.03.2025)

  • Исправлено создание системных настроек

2.2.0-pl (06.10.2023)

  • Пакет стал бесплатным
  • Румынский лексикон
  • Исправления в лексиконе
  • Bootstrap 5

2.1.3-pl (19.02.2019)

  • [msMCDMiniCart] Приведение к boolean

2.1.2-pl (05.02.2019)

  • [msmcdminicart.js] Удалён отладочный код

2.1.1-pl (01.02.2019)

  • Исправлена опечатка

2.1.0-pl (30.01.2019)

  • Добавлена возможность менять количество товара в мини-корзине
  • Добавлена системная настройка msmcd_change_count_mini_cart
  • [msMCDMiniCartRowTpl] Изменён в соответствии с новым функционалом
  • [msMCDMiniCart] Изменён в соответствии с новым функционалом

2.0.6-pl

  • [msmcdcount.js] Исправлен конфликт с mSearch2
  • Вывод превью в мини-корзину с правильным расширением

2.0.5-pl

  • [msMCDMiniCartOuterTpl] Вывод общей стоимости в чанке обёртке

2.0.4-pl

  • Исправлена ошибка ручного ввода количества (контекст)

2.0.3-beta

  • Исправлена ошибка вывода мини корзины при смене контекста (ajax)

2.0.2-beta1

  • Задейственно системное событие msOnBeforeChangeInCart
  • Форматирование денежных чисел

2.0.1-beta

  • Исправлена ошибка удаления товара из мини-корзины
  • Переписан чанк msMCDProductsRowTpl
  • Добавлен чанк msMCDProductsRowInputTpl

2.0.0-beta2

  • [msMCDMiniCart] Синтаксические ошибки

2.0.0-beta1

  • Исправлена ошибка добавления удалённого товара из мини-корзины

2.0.0-beta

  • Первая публикация

Последние обсуждения в сообществе MODX.pro