Skip to content
ms3Favorites
ms3Favorites
Списки избранного для MiniShop3 и других ресурсов — хранение в браузере, синхронизация в БД
  • MODX 3
  • PHP 8.1
  • miniShop3
  1. Компоненты
  2. ms3Favorites

ms3Favorites ​

ms3Favorites — списки избранного для товаров MiniShop3 и других ресурсов (resources, articles, pages, custom). Пользователь сохраняет товары для следующих покупок. Список лежит в браузере (localStorage или cookie) и синхронизируется в БД для авторизованных и гостей (при guest_db_enabled).

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

  • Блок «Избранное» — вывод по списку ID (AJAX через коннектор или серверный вызов сниппета)
  • Хранение в браузере — localStorage (по умолчанию) или cookie, без регистрации
  • Синхронизация в БД — для авторизованных: при входе данные из localStorage переносятся в БД
  • Гости в БД — при guest_db_enabled список гостя сохраняется по session_id
  • Несколько списков — default, gifts, plans и др. (до max_lists)
  • Шаринг списка — публичная ссылка /wishlist/share?token=xxx, копирование чужого списка
  • Страница /wishlist/ — сниппет ms3FavoritesPage: табы и оболочка. Для товаров (resource_type=products) при serverList=1 (по умолчанию) список выводится на сервере через pdoPage + msProducts. При serverList=0 карточки дорисовывает favorites.js (до 100 позиций на вкладку). Для других типов ресурсов список подгружается через JS после sync. Отдельная пагинация: ms3FavoritesIds → pdoPage → ms3Favorites (или msProducts)
  • Интеграция с корзиной — «Добавить все в корзину», «Добавить выбранные»
  • Популярность — «У N пользователей в избранном»
  • Типы ресурсов — products, resources, articles, pages, custom
  • Локализация — MODX Lexicon (ru, en). На фронте — inline через плагин ms3fFrontend или сниппет ms3fLexiconScript
  • Свой вид — Fenom-чанки, BEM-классы (префикс ms3f), CSS-переменные
  • Каталог — чанк tplCatalogRowMs3f для строки с кнопкой избранного при pdoPage + msProducts (интеграция)
  • Автоподключение CSS/JS — плагин ms3fFrontend (OnLoadWebDocument). Список файлов — в ms3favorites.frontend_assets. Inline ms3fLexicon / ms3fConfig — через register_global_config (как ms3_frontend_assets в MiniShop3)
  • AJAX-каталог — публичный API window.ms3Favorites.refresh() после подмены HTML. Есть автоподписка на mfilter:contentLoaded, опция ms3fConfig.refreshEvents и запасной MutationObserver
  • Уведомления — цепочка: опционально ms3fConfig.notify → window.ms3Message.show (MiniShop3) → iziToast. Ленивая загрузка из assets/components/ms3favorites/vendor/izitoast/. Базовый URL — в ms3fConfig.iziToastBaseUrl из ms3fLexiconScript

Системные требования ​

ТребованиеВерсия
MODX Revolution3.0.3+
PHP8.1+
MySQL5.7+ / MariaDB 10.3+

Зависимости ​

Установка ​

Через ModStore ​

  1. Подключите репозиторий ModStore
  2. Перейдите в Extras → Installer и нажмите Download Extras
  3. Убедитесь, что установлены MiniShop3 и pdoTools
  4. Найдите ms3Favorites в списке и нажмите Download, затем Install
  5. Настройки → Очистить кэш

Пакет доступен в каталоге modstore.pro.

После установки ​

По умолчанию CSS/JS и inline-конфиг подключает плагин ms3fFrontend. Достаточно кнопки в карточке товара и блока избранного. Ручное подключение в шаблоне нужно только при отключённом плагине или register_global_config = Нет.

Подробнее: Быстрый старт и Подключение на сайте.

Термины ​

ТерминОписание
WishlistСписок избранных товаров (по умолчанию — default)
СинхронизацияПеренос списка из localStorage в БД при входе пользователя
ШарингПубличная ссылка на список по токену
ПопулярностьКоличество пользователей, добавивших ресурс в избранное