Автор дополнения
Иван Бочкарев
Пакетов
34
Закачек
252
Обычно отвечает в течение суток
Автор дополнения
Пакетов
34
Закачек
252
Обычно отвечает в течение суток
Версия 1.0.0-beta
Дата выпуска 06.08.2026
Загрузки 0
Просмотры 156
Внимание, этот компонент требует PHP 8.2 или выше!
Внимание, этот компонент требует MODX 3 или выше.
Компонент для массового редактирования товаров MiniShop3. Фильтр, выборка, предпросмотр «было → станет», применение порциями и журнал с откатом. Цена, остаток, TV, опции, категории, ресурсные поля. Пресеты, inline в таблице, CSV/XLSX. Админка на Vue 3 + PrimeVue.

msBulkEditor для MODX Revolution 3.x и MiniShop3. Массово меняете поля товаров в менеджере: фильтр → операция → предпросмотр → apply. Ошибочную операцию откатываете целиком или по позициям.

Интерфейс на Vue 3 + PrimeVue + VueTools. Область 1.x: только товары msProduct.

Документация интерфейса со всеми сценариями: docs.modx.pro → msBulkEditor → Интерфейс.




Вкладки
  • Товары (msbulkeditor_view) — отбор, операции, предпросмотр, правка ячеек
  • История — журнал и откат
  • Пресеты (msbulkeditor_presets) — сохранённые операции
  • Импорт и экспорт (msbulkeditor_import_export) — CSV и XLSX

Без права вкладка скрыта. Прямой переход на скрытую вкладку вернёт вас на «Товары».



Базовый цикл
  1. Отметьте товары галочками или включите экспертный режим и настройте фильтр.
  2. Нажмите «Запустить операцию» (или пункт быстрых действий / пресет).
  3. Заполните форму и нажмите «Предпросмотр».
  4. Снимите галочки со строк, которые не нужно менять.
  5. Нажмите «Применить» и дождитесь прогресса.
  6. Проверьте результат. Ошибка? Вкладка «История» → «Откат».

Пошаговый разбор: сценарии A–J.



Экран «Товары»

Сверху вниз: счётчики (по фильтру / отмечено) → toolbar → таблица → предпросмотр → прогресс. Слева — дерево категорий.





Фильтры и выборка
  • дерево категорий (родитель + «Включая подкатегории»)
  • поиск по названию и артикулу
  • фильтр публикации
  • расширенные фильтры: шаблон, производитель, доп. категория, изображение, метки MS3 (new / popular / favorite), удалённые, дубликаты URI
  • KPI «По фильтру» и «Выбрано»
  • настройка колонок: состав, порядок, ширина (TV и опции из каталога полей)
  • сохранение колонок на пользователя менеджера



Подробнее: Сетка товаров, колонки.



Экспертный режим

Операции над всей выборкой по фильтру (all_filtered), без ручного чекбокса каждой строки. Лимит: msbulkeditor_expert_limit (по умолчанию 5000). Флаг разрешения: msbulkeditor_expert_mode.


Apply идёт чанками (msbulkeditor_chunk_size). На экране видите прогресс processed / total.





Предпросмотр и применение
  • сводка: будет изменено / без изменений / пропущено
  • таблица «было / станет»
  • исключение строк перед apply



Разбор: Предпросмотр и применение.



Цена, остаток, категории
  • цена: установить, ±сумма, ±%, округление, перенос в old_price
  • остаток: те же режимы для stock / count
  • категории: доп. категории, снять все, сменить родителя
  • производитель, шаблон, источник файлов
  • варианты (при ms3Variants): price, count, sku, weight








Разбор: Товар и цены.



TV и опции MiniShop3
  • TV: set, add, replace, remove. Виджеты под тип из каталога
  • опции scalar: set / replace / remove
  • опции multi (теги): add / replace / remove
  • при пробелах привязки TV/option — мастер перед preview







Разбор: TV, опции, мастер привязки.



Поля ресурса, SEO, флаги, связи
  • текст (text_set) и поиск/замена (text_replace)
  • SEO: longtitle, description, menutitle, alias
  • даты: set / clear / сдвиг дней
  • пользователь: createdby, editedby, publishedby
  • группа ресурсов, тип контента, источник файлов, шаблон
  • флаги: published, deleted, hidemenu, searchable, cacheable, richtext, uri_override, show_in_tree, метки MS3
  • связи товаров: добавить / удалить
  • служебные: регенерация превью галереи, очистка кэша, regenerate URI, мягкое удаление








Разбор: Поля ресурса.



Быстрые действия

Меню на toolbar (иконка молнии) с готовым типом операции: шаблон, родитель, производитель, текст, галерея, кэш, URI, soft delete, источник, тип контента, группа ресурсов, даты, пользователь.










Разбор: Быстрые действия.



Inline в таблице

Клик по ячейке сохраняет одно поле через тот же pipeline preview/apply: pagetitle, price, stock, published, article, weight, text-TV, image-TV (медиа-браузер), scalar-опции.



Разбор: Редактирование в списке.



История и откат
  • журнал операций со статусами
  • полный откат завершённой операции
  • выборочный откат позиций (панель «Изменения»)
  • снимки значений в msbe_operation_items
  • автоочистка через Scheduler (опционально)





Разбор: История.



Пресеты

Сохраняете JSON операции (fieldType + parameters) под именем. Запускаете со вкладки «Пресеты» или из меню пресетов на toolbar.





Разбор: Пресеты.



Импорт и экспорт
  • экспорт CSV / XLSX по текущей выборке или expert
  • колонки из каталога: id, поля MS3, tv:*, option:*
  • импорт UI: цена, остаток, артикул (маппинг → предпросмотр → apply)




Разбор: Импорт и экспорт.



Права
  • msbulkeditor_view — сетка, предпросмотр, история
  • msbulkeditor_edit — apply, inline, сохранение UI
  • msbulkeditor_rollback — откат
  • msbulkeditor_presets — пресеты
  • msbulkeditor_import_export — импорт и экспорт

Требования
  • MODX 3.0+, PHP 8.2+
  • MiniShop3 ≥ 1.0, VueTools ≥ 1.0
  • ms3Variants, Scheduler

Документация

Changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.

[1.0.0-beta] - 2026-08-06

Added

  • Bulk product editor for MiniShop3 (msProduct only) in MODX Revolution 3 manager.
  • Domain model for mass operations: preview → chunked apply → history with rollback.
  • Vue 3 manager UI (PrimeVue + VueTools): Products, History, Presets, Import/Export.
  • Connector API (assets/components/msbulkeditor/connector.php) and legacy api.php.
  • Field handlers for beta scope: price, stock, boolean_toggle, category, option, tv, vendor, template, source, content_type, user, resource_group, text_set, dates, text_replace, seo, link, variant, gallery_regenerate, resource_utility, soft_delete.
  • Variant-aware modes for price/stock; optional ms3Variants integration.
  • Inline cell edit for pagetitle, price, stock, published, article, weight, text TV, image TV (MODX media browser), scalar MS3 options.
  • Binding wizard when TV/option template coverage has gaps.
  • Presets CRUD (JSON fieldType + parameters).
  • CSV/XLSX export and import (import UI targets price, stock, article).
  • Permissions: msbulkeditor_view, msbulkeditor_edit, msbulkeditor_rollback, msbulkeditor_presets, msbulkeditor_import_export.
  • System settings: chunk size, expert limit/mode, preview detail limit, history retention, per-user UI state, import row limit, Scheduler cleanup toggle.
  • Persistence helpers: ProductChangeApplier, MiniShop3SnapshotEnricher, Ms3VariantsRepository.
  • History list/detail, item-level rollback, retention cleanup task via Scheduler.
  • PHP unit tests, frontend unit tests (Vite), Playwright smoke tests and .github/workflows/e2e.yml (skips without MSBE_BASE_URL).
  • Accessibility CSS: :focus-visible and prefers-contrast: more helpers.

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