MiniShop3 - 1.1.0 - Уже в Modstore.pro

Друзья, спустя три года ожидания я наконец опубликовал в modstore первую версию MiniShop3. С чем вас всех и поздравляю. Искренне надеюсь, что это станет хорошим стартом для постепенного перехода на MODX3.


С момента публикации прошла уже неделя, и ко мне потихоньку начинает поступать фидбек. К сожалению без багов не обошлось. Отдельное спасибо хочу сказать наиболее активному тестировщику @Ruslan
Я со своей стороны, не откладывая в долгий ящик сразу все найденные проблемы проверял и фиксил. Буквально сегодня ночью выпустил первый пакет обновлений версии 1.1.0.

Кроме исправления багов, заложил также одно улучшение. Давно просили сделать кнопки Плюс-Минус в карточке товара для случаев, когда товар уже в корзине.



Также подготовил первую версию документации к компоненту. Постарался раскрыть побольше технических вопросов для разработчиков. К примеру заморочился и подготовил примеры вообще на все существующие события. В MS2 мы такого не делали.

Вот такая короткая заметка на сегодня.

Open Source живёт благодаря вам

MiniShop3 развивается силами сообщества. Если новый релиз и предыдущие обновления оказались полезны — поддержите проект и лично меня вашими новогодними донатами.

Все наши реквизиты есть на специальной странице.
Николай Савин
Николай Савин
11 января 2026, 13:40
modx.pro
2 015
Реклама

Комментарии: 38

Антон Тарасов
Антон Тарасов Старожил
11 января 2026, 16:55
Важность этого релиза (апдейта) невозможно переоценить, проголосовал рублём (донатом).
    Николай Савин
    Николай Савин Администратор
    11 января 2026, 19:06
    От всей души спасибо
    Андрей
    Андрей Старожил
    12 января 2026, 15:55
    Какое решение для фильтрации товаров подойдет для ms3?
      Николай Савин
      Николай Савин Администратор
      12 января 2026, 16:10
      Компонент mFilter в активной разработке. Релиз будет в ближайшие дней 10.
        Андрей
        Андрей Старожил
        13 января 2026, 00:35
        Круто! Ждем! Куда фидбекать по ошибкам? ms3 просит установить VueTools даже после его установки
          Николай Савин
          Николай Савин Администратор
          13 января 2026, 09:17
          Фидбек куда тебе удобно. Я везде читаю.

          ms3 просит установить VueTools даже после его установки
          Ну чет пока у тебя одного только просит. Попробуй обновить страницу через CTRL + F5
      Дима Касаткин
      Дима Касаткин Старожил
      12 января 2026, 16:23
      Выход MS3 это наверное лучшая новость в мире MODX со времен выхода самого MODX3. Спасибо! И за технологическое обновление с VUE-админкой — прямо праздник какой-то =) Ура, теперь, надеюсь, тройку будет не удержать!
        Evgeny Epifanov
        Evgeny Epifanov Старожил
        13 января 2026, 15:15
        На абсолютно чистой системе, при установке такие ошибки:
        Консоль запущена...
        Пробуем установить пакет с подписью: minishop3-1.1.0-beta1
        Пакет найден... сейчас идёт подготовка к его установке.
        Загрузка рабочего пространства пакета...
        Рабочее пространство загружено, сейчас устанавливаем пакет...
        [MiniShop3] Starting database migrations...
        PHP warning: Constant MODX_CORE_PATH already defined
        PHP warning: Constant MODX_CONFIG_KEY already defined
        [MiniShop3] Migration execution failed: SQLSTATE[HY000]: General error: 1364 Field 'created_at' doesn't have a default value
        [MiniShop3] Migration error: SQLSTATE[HY000]: General error: 1364 Field 'created_at' doesn't have a default value
        [MiniShop3] Stack trace: #0 /var/www/modx3/www/core/components/minishop3/vendor/robmorgan/phinx/src/Phinx/Db/Adapter/PdoAdapter.php(462): PDOStatement->execute() #1 /var/www/modx3/www/core/components/minishop3/vendor/robmorgan/phinx/src/Phinx/Db/Adapter/AdapterWrapper.php(186): Phinx\Db\Adapter\PdoAdapter->bulkinsert() #2 /var/www/modx3/www/core/components/minishop3/vendor/robmorgan/phinx/src/Phinx/Db/Adapter/TimedOutputAdapter.php(103): Phinx\Db\Adapter\AdapterWrapper->bulkinsert() #3 /var/www/modx3/www/core/components/minishop3/vendor/robmorgan/phinx/src/Phinx/Db/Adapter/AdapterWrapper.php(186): Phinx\Db\Adapter\TimedOutputAdapter->bulkinsert() #4 /var/www/modx3/www/core/components/minishop3/vendor/robmorgan/phinx/src/Phinx/Db/Adapter/TablePrefixAdapter.php(373): Phinx\Db\Adapter\AdapterWrapper->bulkinsert() #5 /var/www/modx3/www/core/components/minishop3/vendor/robmorgan/phinx/src/Phinx/Db/Table.php(662): Phinx\Db\Adapter\TablePrefixAdapter->bulkinsert() #6 /var/www/modx3/www/core/components/minishop3/vendor/robmorgan/phinx/src/Phinx/Db/Table.php(634): Phinx\Db\Table->saveData() #7 /var/www/modx3/www/core/components/minishop3/vendor/robmorgan/phinx/src/Phinx/Db/Table.php(692): Phinx\Db\Table->update() #8 /var/www/modx3/www/core/components/minishop3/migrations/20251127000002_seed_customers_grid_config.php(141): Phinx\Db\Table->save() #9 /var/www/modx3/www/core/components/minishop3/vendor/robmorgan/phinx/src/Phinx/Migration/Manager/Environment.php(112): SeedCustomersGridConfig->up() #10 /var/www/modx3/www/core/components/minishop3/vendor/robmorgan/phinx/src/Phinx/Migration/Manager.php(413): Phinx\Migration\Manager\Environment->executeMigration() #11 /var/www/modx3/www/core/components/minishop3/vendor/robmorgan/phinx/src/Phinx/Migration/Manager.php(384): Phinx\Migration\Manager->executeMigration() #12 /var/www/modx3/www/core/packages/minishop3-1.1.0-beta1/MODX/Revolution/modCategory/f614c4b6a105e07a28f3505f9d13c876.resolver_02_migrations.resolver(76): Phinx\Migration\Manager->migrate() #13 /var/www/modx3/www/core/vendor/xpdo/xpdo/src/xPDO/Transport/xPDOVehicle.php(216): include('...') #14 /var/www/modx3/www/core/vendor/xpdo/xpdo/src/xPDO/Transport/xPDOObjectVehicle.php(218): xPDO\Transport\xPDOVehicle->resolve() #15 /var/www/modx3/www/core/vendor/xpdo/xpdo/src/xPDO/Transport/xPDOObjectVehicle.php(77): xPDO\Transport\xPDOObjectVehicle->_installObject() #16 /var/www/modx3/www/core/vendor/xpdo/xpdo/src/xPDO/Transport/xPDOTransport.php(263): xPDO\Transport\xPDOObjectVehicle->install() #17 /var/www/modx3/www/core/src/Revolution/Transport/modTransportPackage.php(346): xPDO\Transport\xPDOTransport->install() #18 /var/www/modx3/www/core/src/Revolution/Processors/Workspace/Packages/Install.php(73): MODX\Revolution\Transport\modTransportPackage->install() #19 /var/www/modx3/www/core/src/Revolution/Processors/Processor.php(208): MODX\Revolution\Processors\Workspace\Packages\Install->process() #20 /var/www/modx3/www/core/src/Revolution/modX.php(1781): MODX\Revolution\Processors\Processor->run() #21 /var/www/modx3/www/core/src/Revolution/modConnectorResponse.php(151): MODX\Revolution\modX->runProcessor() #22 /var/www/modx3/www/core/src/Revolution/modConnectorRequest.php(89): MODX\Revolution\modConnectorResponse->outputContent() #23 /var/www/modx3/www/core/src/Revolution/modConnectorRequest.php(77): MODX\Revolution\modConnectorRequest->prepareResponse() #24 /var/www/modx3/www/connectors/index.php(79): MODX\Revolution\modConnectorRequest->handleRequest() #25 {main}
        ✅ [MiniShop3] Manager API custom routes file created at: core/config/ms3_routes_manager.custom.php
        This file will NEVER be overwritten. Safe to customize!
        [MiniShop3] Could not create Web API custom routes example (optional)
        📁 [MiniShop3] System routes are in: core/components/minishop3/config/routes/
        [MiniShop3] Scheduled first run for recurring task 'ms3_cleanup_drafts'
        [MiniShop3] Scheduled first run for recurring task 'ms3_cleanup_tokens'
        [MiniShop3] Scheduler tasks: 4 registered, 0 updated
        [MiniShop3] Recurring tasks enabled: ms3_cleanup_drafts (daily), ms3_cleanup_tokens (weekly).
        Успешно установлен пакет minishop3-1.1.0-beta1
        Насколько это критично?
          Николай Савин
          Николай Савин Администратор
          13 января 2026, 20:04
          Довольно критично. Некоторые таблицы могли не создаться. Это мы поправим.
          Уточни пожалуйста, какая версия СУБД используется?
            Evgeny Epifanov
            Evgeny Epifanov Старожил
            14 января 2026, 09:38
            10.11.13-MariaDB-0ubuntu0.24.04.1
              Evgeny Epifanov
              Evgeny Epifanov Старожил
              14 января 2026, 10:27
              Да, это все же критично. Миграции не работают. При создании своего дополнительного поля возникает ошибка.
              Ошибка создания
              Migration execution error: SQLSTATE[HY000]: General error: 1364 Field 'created_at' doesn't have a default value
                Николай Савин
                Николай Савин Администратор
                14 января 2026, 11:16
                Внес правку и перевыпустил компонент без изменения версии. Попробуй удали пакет, если он установлен и скачай из modstore заново. Жду обратную связь.
                Важно — убедись что все таблицы были удалены из базы данных (они при удалении компонента не удаляются) В том числе удали таблицу ms3_migrations
                  Evgeny Epifanov
                  Evgeny Epifanov Старожил
                  14 января 2026, 11:40
                  На поддомен вынес.
                  Консоль запущена...
                  Пробуем установить пакет с подписью: minishop3-1.1.0-beta1
                  Пакет найден... сейчас идёт подготовка к его установке.
                  Загрузка рабочего пространства пакета...
                  Рабочее пространство загружено, сейчас устанавливаем пакет...
                  [MiniShop3] Starting database migrations...
                  PHP warning: Constant MODX_CORE_PATH already defined
                  PHP warning: Constant MODX_CONFIG_KEY already defined
                  [MiniShop3] Migration execution failed: SQLSTATE[42S22]: Column not found: 1054 Unknown column 'grid_key' in 'INSERT INTO'
                  [MiniShop3] Migration error: SQLSTATE[42S22]: Column not found: 1054 Unknown column 'grid_key' in 'INSERT INTO'
                  [MiniShop3] Stack trace: #0 /var/www/dev1/www/core/components/minishop3/vendor/robmorgan/phinx/src/Phinx/Db/Adapter/PdoAdapter.php(462): PDOStatement->execute() #1 /var/www/dev1/www/core/components/minishop3/vendor/robmorgan/phinx/src/Phinx/Db/Adapter/AdapterWrapper.php(186): Phinx\Db\Adapter\PdoAdapter->bulkinsert() #2 /var/www/dev1/www/core/components/minishop3/vendor/robmorgan/phinx/src/Phinx/Db/Adapter/TimedOutputAdapter.php(103): Phinx\Db\Adapter\AdapterWrapper->bulkinsert() #3 /var/www/dev1/www/core/components/minishop3/vendor/robmorgan/phinx/src/Phinx/Db/Adapter/AdapterWrapper.php(186): Phinx\Db\Adapter\TimedOutputAdapter->bulkinsert() #4 /var/www/dev1/www/core/components/minishop3/vendor/robmorgan/phinx/src/Phinx/Db/Adapter/TablePrefixAdapter.php(373): Phinx\Db\Adapter\AdapterWrapper->bulkinsert() #5 /var/www/dev1/www/core/components/minishop3/vendor/robmorgan/phinx/src/Phinx/Db/Table.php(662): Phinx\Db\Adapter\TablePrefixAdapter->bulkinsert() #6 /var/www/dev1/www/core/components/minishop3/vendor/robmorgan/phinx/src/Phinx/Db/Table.php(622): Phinx\Db\Table->saveData() #7 /var/www/dev1/www/core/components/minishop3/vendor/robmorgan/phinx/src/Phinx/Db/Table.php(694): Phinx\Db\Table->create() #8 /var/www/dev1/www/core/components/minishop3/migrations/20251127000002_seed_customers_grid_config.php(148): Phinx\Db\Table->save() #9 /var/www/dev1/www/core/components/minishop3/vendor/robmorgan/phinx/src/Phinx/Migration/Manager/Environment.php(112): SeedCustomersGridConfig->up() #10 /var/www/dev1/www/core/components/minishop3/vendor/robmorgan/phinx/src/Phinx/Migration/Manager.php(413): Phinx\Migration\Manager\Environment->executeMigration() #11 /var/www/dev1/www/core/components/minishop3/vendor/robmorgan/phinx/src/Phinx/Migration/Manager.php(384): Phinx\Migration\Manager->executeMigration() #12 /var/www/dev1/www/core/packages/minishop3-1.1.0-beta1/MODX/Revolution/modCategory/fb0516c1046b88fd6bb943da8b601bef.resolver_02_migrations.resolver(76): Phinx\Migration\Manager->migrate() #13 /var/www/dev1/www/core/vendor/xpdo/xpdo/src/xPDO/Transport/xPDOVehicle.php(216): include('...') #14 /var/www/dev1/www/core/vendor/xpdo/xpdo/src/xPDO/Transport/xPDOObjectVehicle.php(218): xPDO\Transport\xPDOVehicle->resolve() #15 /var/www/dev1/www/core/vendor/xpdo/xpdo/src/xPDO/Transport/xPDOObjectVehicle.php(77): xPDO\Transport\xPDOObjectVehicle->_installObject() #16 /var/www/dev1/www/core/vendor/xpdo/xpdo/src/xPDO/Transport/xPDOTransport.php(263): xPDO\Transport\xPDOObjectVehicle->install() #17 /var/www/dev1/www/core/src/Revolution/Transport/modTransportPackage.php(346): xPDO\Transport\xPDOTransport->install() #18 /var/www/dev1/www/core/src/Revolution/Processors/Workspace/Packages/Install.php(73): MODX\Revolution\Transport\modTransportPackage->install() #19 /var/www/dev1/www/core/src/Revolution/Processors/Processor.php(208): MODX\Revolution\Processors\Workspace\Packages\Install->process() #20 /var/www/dev1/www/core/src/Revolution/modX.php(1781): MODX\Revolution\Processors\Processor->run() #21 /var/www/dev1/www/core/src/Revolution/modConnectorResponse.php(151): MODX\Revolution\modX->runProcessor() #22 /var/www/dev1/www/core/src/Revolution/modConnectorRequest.php(89): MODX\Revolution\modConnectorResponse->outputContent() #23 /var/www/dev1/www/core/src/Revolution/modConnectorRequest.php(77): MODX\Revolution\modConnectorRequest->prepareResponse() #24 /var/www/dev1/www/connectors/index.php(79): MODX\Revolution\modConnectorRequest->handleRequest() #25 {main}
                  ✅ [MiniShop3] Manager API custom routes file created at: core/config/ms3_routes_manager.custom.php
                  This file will NEVER be overwritten. Safe to customize!
                  [MiniShop3] Could not create Web API custom routes example (optional)
                  📁 [MiniShop3] System routes are in: core/components/minishop3/config/routes/
                  [MiniShop3] Scheduled first run for recurring task 'ms3_cleanup_drafts'
                  [MiniShop3] Scheduled first run for recurring task 'ms3_cleanup_tokens'
                  [MiniShop3] Scheduler tasks: 4 registered, 0 updated
                  [MiniShop3] Recurring tasks enabled: ms3_cleanup_drafts (daily), ms3_cleanup_tokens (weekly).
                  Успешно установлен пакет minishop3-1.1.0-beta1
                    Николай Савин
                    Николай Савин Администратор
                    14 января 2026, 12:42
                    Внес исправления еще раз, хорошо с нуля все проверил. Обновил в modstore, можно попробовать переустановить
                      Evgeny Epifanov
                      Evgeny Epifanov Старожил
                      14 января 2026, 13:17
                      Вроде все нормально.
                      Поля создаются.
                      Огромное спасибо за компонент и за оперативное решение вопросов!
                        Николай Савин
                        Николай Савин Администратор
                        14 января 2026, 13:36
                        Тебе спасибо за обратную связь. 100 человек прошли бы мимо, а ты написал и протестировал.
                          Evgeny Epifanov
                          Evgeny Epifanov Старожил
                          14 января 2026, 14:47
                          Ну, тогда, пока не забыл...)
                          Импорт товаров.
                          • Не работает dragndrop, через файловый менеджер все работает.
                          • Не нашел соответствия полю class_key, а ведь категории товаров тоже хочется импортировать.
                          • Полю parent соответствует «Категория». Долго не мог найти соответствие типа «Родитель». Просто ввело в заблуждение.
                          • Не отображаются свои поля
                          • Что делает соответствие «ms3_import_skip_column»? Первое в списке
                          • Все соответствия прописаны на русском, опции (свойства товара) товара выводятся по ключу. Видимо из-за лексиконов. Конечно, это не критично.
                          • После успешного импорта: Обработано: 0 Создано: 0 Обновлено: 0
                          Как же круто, что система подтягивает нужные наименование полей по заголовкам *.csv!
                          Извиняюсь, что пишу сюда. Николай, куда лучше писать про замеченные ошибки?
                            Николай Савин
                            Николай Савин Администратор
                            14 января 2026, 15:11
                            Да особо без разницы куда писать. Я отслеживаю все записи. Но в идеале создавать issue в репозитории github.com/modx-pro/MiniShop3/issues.
                              Руслан
                              Руслан Старожил
                              20 января 2026, 01:33
                              То же «не пройду мимо». )
                              Создал на sweb.ru (ex. modhost.pro) чистый тестовый аккаунт «Старт» и установил там чистый MODX 3 (и сразу накатил pdoTools и vueTools), при установке и переустановке MiniShop3 возникают такие ошибки:

                              Консоль запущена...
                              PHP deprecated: Creation of dynamic property MODX\Revolution\modConnectorResponse::$response is deprecated
                              Пробуем установить пакет с подписью: minishop3-1.2.0-beta1
                              Пакет найден... сейчас идёт подготовка к его установке.
                              Загрузка рабочего пространства пакета...
                              Рабочее пространство загружено, сейчас устанавливаем пакет...
                              PHP deprecated: Creation of dynamic property MODX\Revolution\modConnectorResponse::$response is deprecated
                              [MiniShop3] Starting database migrations...
                              [MiniShop3] Migration execution failed: SQLSTATE[42S02]: Base table or view not found: 1146 Table 'keltopartu.modx_ms3_grid_fields' doesn't exist
                              [MiniShop3] Migration error: SQLSTATE[42S02]: Base table or view not found: 1146 Table 'keltopartu.modx_ms3_grid_fields' doesn't exist
                              [MiniShop3] Stack trace: #0 /home/k/keltopartu/core/components/minishop3/vendor/robmorgan/phinx/src/Phinx/Db/Adapter/PdoAdapter.php(462): PDOStatement->execute(Array) #1 /home/k/keltopartu/core/components/minishop3/vendor/robmorgan/phinx/src/Phinx/Db/Adapter/AdapterWrapper.php(186): Phinx\Db\Adapter\PdoAdapter->bulkinsert(Object(Phinx\Db\Table\Table), Array) #2 /home/k/keltopartu/core/components/minishop3/vendor/robmorgan/phinx/src/Phinx/Db/Adapter/TimedOutputAdapter.php(103): Phinx\Db\Adapter\AdapterWrapper->bulkinsert(Object(Phinx\Db\Table\Table), Array) #3 /home/k/keltopartu/core/components/minishop3/vendor/robmorgan/phinx/src/Phinx/Db/Adapter/AdapterWrapper.php(186): Phinx\Db\Adapter\TimedOutputAdapter->bulkinsert(Object(Phinx\Db\Table\Table), Array) #4 /home/k/keltopartu/core/components/minishop3/vendor/robmorgan/phinx/src/Phinx/Db/Adapter/TablePrefixAdapter.php(373): Phinx\Db\Adapter\AdapterWrapper->bulkinsert(Object(Phinx\Db\Table\Table), Array) #5 /home/k/keltopartu/core/components/minishop3/vendor/robmorgan/phinx/src/Phinx/Db/Table.php(662): Phinx\Db\Adapter\TablePrefixAdapter->bulkinsert(Object(Phinx\Db\Table\Table), Array) #6 /home/k/keltopartu/core/components/minishop3/migrations/20251127000002_seed_customers_grid_config.php(148): Phinx\Db\Table->saveData() #7 /home/k/keltopartu/core/components/minishop3/vendor/robmorgan/phinx/src/Phinx/Migration/Manager/Environment.php(112): SeedCustomersGridConfig->up() #8 /home/k/keltopartu/core/components/minishop3/vendor/robmorgan/phinx/src/Phinx/Migration/Manager.php(413): Phinx\Migration\Manager\Environment->executeMigration(Object(SeedCustomersGridConfig), 'up', false) #9 /home/k/keltopartu/core/components/minishop3/vendor/robmorgan/phinx/src/Phinx/Migration/Manager.php(384): Phinx\Migration\Manager->executeMigration('production', Object(SeedCustomersGridConfig), 'up', false) #10 /home/k/keltopartu/core/packages/minishop3-1.2.0-beta1/MODX/Revolution/modCategory/28e69eb7abbb2be48e7c3f8899a1d2af.resolver_02_migrations.resolver(76): Phinx\Migration\Manager->migrate('production') #11 /home/k/keltopartu/core/vendor/xpdo/xpdo/src/xPDO/Transport/xPDOVehicle.php(216): include('/home/k/keltopa...') #12 /home/k/keltopartu/core/vendor/xpdo/xpdo/src/xPDO/Transport/xPDOObjectVehicle.php(218): xPDO\Transport\xPDOVehicle->resolve(Object(xPDO\Transport\xPDOTransport), Object(MODX\Revolution\mysql\modCategory), Array) #13 /home/k/keltopartu/core/vendor/xpdo/xpdo/src/xPDO/Transport/xPDOObjectVehicle.php(77): xPDO\Transport\xPDOObjectVehicle->_installObject(Object(xPDO\Transport\xPDOTransport), Array, Array, NULL, NULL) #14 /home/k/keltopartu/core/vendor/xpdo/xpdo/src/xPDO/Transport/xPDOTransport.php(263): xPDO\Transport\xPDOObjectVehicle->install(Object(xPDO\Transport\xPDOTransport), Array) #15 /home/k/keltopartu/core/src/Revolution/Transport/modTransportPackage.php(346): xPDO\Transport\xPDOTransport->install(Array) #16 /home/k/keltopartu/core/src/Revolution/Processors/Workspace/Packages/Install.php(73): MODX\Revolution\Transport\modTransportPackage->install(Array) #17 /home/k/keltopartu/core/src/Revolution/Processors/Processor.php(189): MODX\Revolution\Processors\Workspace\Packages\Install->process() #18 /home/k/keltopartu/core/src/Revolution/modX.php(1771): MODX\Revolution\Processors\Processor->run() #19 /home/k/keltopartu/core/src/Revolution/modConnectorResponse.php(151): MODX\Revolution\modX->runProcessor('Workspace/Packa...', Array, Array) #20 /home/k/keltopartu/core/src/Revolution/modConnectorRequest.php(89): MODX\Revolution\modConnectorResponse->outputContent(Array) #21 /home/k/keltopartu/core/src/Revolution/modConnectorRequest.php(77): MODX\Revolution\modConnectorRequest->prepareResponse(Array) #22 /home/k/keltopartu/public_html/connectors/index.php(79): MODX\Revolution\modConnectorRequest->handleRequest() #23 {main}
                              PHP warning: mkdir(): File exists
                              PHP warning: mkdir(): File exists
                              ✅ [MiniShop3] Manager API custom routes file exists (preserved): core/config/ms3_routes_manager.custom.php
                              [MiniShop3] Could not create Web API custom routes example (optional)
                              📁 [MiniShop3] System routes are in: core/components/minishop3/config/routes/
                              PHP deprecated: Creation of dynamic property MODX\Revolution\modConnectorResponse::$response is deprecated
                              [MiniShop3] Scheduler tasks: 0 registered, 4 updated
                              [MiniShop3] Recurring tasks enabled: ms3_cleanup_drafts (daily), ms3_cleanup_tokens (weekly).
                              Успешно установлен пакет minishop3-1.2.0-beta1
                              Николай Савин
                              Николай Савин Администратор
                              20 января 2026, 10:24
                              Подготовил релиз 1.2.1 — можешь проверить. Лучше с нуля поставить, если часть минишопа установилась — удали.
                              Руслан
                              Руслан Старожил
                              20 января 2026, 16:30
                              Накатил на чистую 1.2.1 теперь такое:

                              Консоль запущена...
                              Пробуем установить пакет с подписью: minishop3-1.2.1-beta1
                              Пакет найден... сейчас идёт подготовка к его установке.
                              Загрузка рабочего пространства пакета...
                              Рабочее пространство загружено, сейчас устанавливаем пакет...
                              PHP deprecated: Creation of dynamic property MODX\Revolution\modConnectorResponse::$response is deprecated
                              [MiniShop3] Starting database migrations...
                              [MiniShop3] Migration execution failed: SQLSTATE[42S02]: Base table or view not found: 1146 Table 'williamso2.modx_ms3_grid_fields' doesn't exist
                              [MiniShop3] Migration error: SQLSTATE[42S02]: Base table or view not found: 1146 Table 'williamso2.modx_ms3_grid_fields' doesn't exist
                              [MiniShop3] Stack trace: #0 /home/w/williamso2/core/components/minishop3/vendor/robmorgan/phinx/src/Phinx/Db/Adapter/PdoAdapter.php(462): PDOStatement->execute(Array) #1 /home/w/williamso2/core/components/minishop3/vendor/robmorgan/phinx/src/Phinx/Db/Adapter/AdapterWrapper.php(186): Phinx\Db\Adapter\PdoAdapter->bulkinsert(Object(Phinx\Db\Table\Table), Array) #2 /home/w/williamso2/core/components/minishop3/vendor/robmorgan/phinx/src/Phinx/Db/Adapter/TimedOutputAdapter.php(103): Phinx\Db\Adapter\AdapterWrapper->bulkinsert(Object(Phinx\Db\Table\Table), Array) #3 /home/w/williamso2/core/components/minishop3/vendor/robmorgan/phinx/src/Phinx/Db/Adapter/AdapterWrapper.php(186): Phinx\Db\Adapter\TimedOutputAdapter->bulkinsert(Object(Phinx\Db\Table\Table), Array) #4 /home/w/williamso2/core/components/minishop3/vendor/robmorgan/phinx/src/Phinx/Db/Adapter/TablePrefixAdapter.php(373): Phinx\Db\Adapter\AdapterWrapper->bulkinsert(Object(Phinx\Db\Table\Table), Array) #5 /home/w/williamso2/core/components/minishop3/vendor/robmorgan/phinx/src/Phinx/Db/Table.php(662): Phinx\Db\Adapter\TablePrefixAdapter->bulkinsert(Object(Phinx\Db\Table\Table), Array) #6 /home/w/williamso2/core/components/minishop3/migrations/20251127000002_seed_customers_grid_config.php(148): Phinx\Db\Table->saveData() #7 /home/w/williamso2/core/components/minishop3/vendor/robmorgan/phinx/src/Phinx/Migration/Manager/Environment.php(112): SeedCustomersGridConfig->up() #8 /home/w/williamso2/core/components/minishop3/vendor/robmorgan/phinx/src/Phinx/Migration/Manager.php(413): Phinx\Migration\Manager\Environment->executeMigration(Object(SeedCustomersGridConfig), 'up', false) #9 /home/w/williamso2/core/components/minishop3/vendor/robmorgan/phinx/src/Phinx/Migration/Manager.php(384): Phinx\Migration\Manager->executeMigration('production', Object(SeedCustomersGridConfig), 'up', false) #10 /home/w/williamso2/core/packages/minishop3-1.2.1-beta1/MODX/Revolution/modCategory/a668ad8904a6ea5e15270b635ab456ae.resolver_02_migrations.resolver(76): Phinx\Migration\Manager->migrate('production') #11 /home/w/williamso2/core/vendor/xpdo/xpdo/src/xPDO/Transport/xPDOVehicle.php(216): include('/home/w/william...') #12 /home/w/williamso2/core/vendor/xpdo/xpdo/src/xPDO/Transport/xPDOObjectVehicle.php(218): xPDO\Transport\xPDOVehicle->resolve(Object(xPDO\Transport\xPDOTransport), Object(MODX\Revolution\mysql\modCategory), Array) #13 /home/w/williamso2/core/vendor/xpdo/xpdo/src/xPDO/Transport/xPDOObjectVehicle.php(77): xPDO\Transport\xPDOObjectVehicle->_installObject(Object(xPDO\Transport\xPDOTransport), Array, Array, NULL, NULL) #14 /home/w/williamso2/core/vendor/xpdo/xpdo/src/xPDO/Transport/xPDOTransport.php(263): xPDO\Transport\xPDOObjectVehicle->install(Object(xPDO\Transport\xPDOTransport), Array) #15 /home/w/williamso2/core/src/Revolution/Transport/modTransportPackage.php(346): xPDO\Transport\xPDOTransport->install(Array) #16 /home/w/williamso2/core/src/Revolution/Processors/Workspace/Packages/Install.php(73): MODX\Revolution\Transport\modTransportPackage->install(Array) #17 /home/w/williamso2/core/src/Revolution/Processors/Processor.php(189): MODX\Revolution\Processors\Workspace\Packages\Install->process() #18 /home/w/williamso2/core/src/Revolution/modX.php(1771): MODX\Revolution\Processors\Processor->run() #19 /home/w/williamso2/core/src/Revolution/modConnectorResponse.php(151): MODX\Revolution\modX->runProcessor('Workspace/Packa...', Array, Array) #20 /home/w/williamso2/core/src/Revolution/modConnectorRequest.php(89): MODX\Revolution\modConnectorResponse->outputContent(Array) #21 /home/w/williamso2/core/src/Revolution/modConnectorRequest.php(77): MODX\Revolution\modConnectorRequest->prepareResponse(Array) #22 /home/w/williamso2/public_html/connectors/index.php(79): MODX\Revolution\modConnectorRequest->handleRequest() #23 {main}
                              ✅ [MiniShop3] Manager API custom routes file created at: core/config/ms3_routes_manager.custom.php
                              This file will NEVER be overwritten. Safe to customize!
                              [MiniShop3] Could not create Web API custom routes example (optional)
                              📁 [MiniShop3] System routes are in: core/components/minishop3/config/routes/
                              [MiniShop3] Scheduler not installed, skipping task registration. Install Scheduler component to enable background task processing.
                              Успешно установлен пакет minishop3-1.2.1-beta1
                              Николай Савин
                              Николай Савин Администратор
                              20 января 2026, 16:54
                              А что ты под чистым понимаешь? Ты прям с нуля сайт поднял или же просто удалил минишоп и установил заново? Если так — то есть проблема. MODX не удаляет таблицы при удалении компонента. Нужно зайти в базу данных, удалить все таблицы с префиксом ms3_* а также удалить или очистить таблицу ms3_migrations
                              Николай Савин
                              Николай Савин Администратор
                              20 января 2026, 17:39
                              Выпустил еще один патч — обновляйся проверяй.
                              Руслан
                              Руслан Старожил
                              21 января 2026, 00:03
                              Низкий поклон вам за старания. Будет возможность, порадую и «звонкой монетой».

                              Под чистым — это заведение нового аккаунта на sweb (14 дней бесплатных), автоустановка модекса с нуля средствами админки, далее добавление репозитория modstore.pro и установка pdoTools и vueTools и потом уже miniShop3.

                              На третьей итерации заметил, что sweb при автоустановке MODX 3, делает папку /core/ на уровень выше от папки сайта ($modx_core_path= '/home/w/williamso3/public_html/../core/'), перенёс её в папку сайта и «Ура» — прошло успешно:
                              Консоль запущена...
                              Пробуем установить пакет с подписью: minishop3-1.2.2-beta1
                              Пакет найден... сейчас идёт подготовка к его установке.
                              Загрузка рабочего пространства пакета...
                              Рабочее пространство загружено, сейчас устанавливаем пакет...
                              PHP deprecated: Creation of dynamic property MODX\Revolution\modConnectorResponse::$response is deprecated
                              [MiniShop3] Starting database migrations...
                              PHP warning: Constant MODX_CORE_PATH already defined
                              PHP warning: Constant MODX_CONFIG_KEY already defined
                              PHP deprecated: Creation of dynamic property MODX\Revolution\modConnectorResponse::$response is deprecated
                              == 20251020000000 InitialSchema: migrating
                              Creating MiniShop3 tables...
                              Model path: /home/w/williamso3/public_html/core/components/minishop3/src/Model/
                              Table `modx_site_content` already exists, skipping
                              ✓ Created table: `modx_ms3_product_categories`
                              ✓ Created table: `modx_ms3_category_options`
                              ✓ Created table: `modx_ms3_customers`
                              ✓ Created table: `modx_ms3_customer_addresses`
                              ✓ Created table: `modx_ms3_customer_tokens`
                              ✓ Created table: `modx_ms3_deliveries`
                              ✓ Created table: `modx_ms3_delivery_payments`
                              ✓ Created table: `modx_ms3_extra_fields`
                              ✓ Created table: `modx_ms3_grid_fields`
                              ✓ Created table: `modx_ms3_links`
                              ✓ Created table: `modx_ms3_notification_configs`
                              ✓ Created table: `modx_ms3_options`
                              ✓ Created table: `modx_ms3_orders`
                              ✓ Created table: `modx_ms3_order_addresses`
                              ✓ Created table: `modx_ms3_order_logs`
                              ✓ Created table: `modx_ms3_order_products`
                              ✓ Created table: `modx_ms3_order_statuses`
                              ✓ Created table: `modx_ms3_page_sections`
                              ✓ Created table: `modx_ms3_payments`
                              Table `modx_site_content` already exists, skipping
                              ✓ Created table: `modx_ms3_products`
                              ✓ Created table: `modx_ms3_product_fields`
                              ✓ Created table: `modx_ms3_product_files`
                              ✓ Created table: `modx_ms3_product_links`
                              ✓ Created table: `modx_ms3_product_options`
                              ✓ Created table: `modx_ms3_vendors`
                              MiniShop3 schema creation completed!
                              Adding foreign key constraints...
                              Foreign keys setup completed!
                              == 20251020000000 InitialSchema: migrated 0.2875s
                              == 20251021000000 SeedPageSections: migrating
                              ✓ Inserted 4 page sections for product_data
                              == 20251021000000 SeedPageSections: migrated 0.0034s
                              == 20251022000000 SeedProductFields: migrating
                              ✓ Inserted 13 default product fields
                              == 20251022000000 SeedProductFields: migrated 0.0052s
                              == 20251023000000 SeedOrderStatuses: migrating
                              ✓ Inserted 5 default order statuses
                              Note: Status names will be replaced with lexicon values when accessed through MODX
                              Updating system settings with status IDs...
                              ✓ Updated ms3_status_new = 2 (from ms3_order_status_new)
                              ✓ Updated ms3_status_paid = 3 (from ms3_order_status_paid)
                              ✓ Updated ms3_status_canceled = 5 (from ms3_order_status_cancelled)
                              ✓ System settings updated successfully
                              == 20251023000000 SeedOrderStatuses: migrated 0.0050s
                              == 20251023000001 SeedDeliveryAndPayment: migrating
                              ✓ Created default delivery: ms3_delivery_self_pickup
                              ✓ Created default payment: ms3_payment_cash
                              ✓ Linked delivery and payment
                              Default delivery and payment setup completed!
                              == 20251023000001 SeedDeliveryAndPayment: migrated 0.0075s
                              == 20251127000002 SeedCustomersGridConfig: migrating
                              == 20251127000002 SeedCustomersGridConfig: migrated 0.0025s
                              == 20251204140000 SeedOrdersGridConfig: migrating
                              == 20251204140000 SeedOrdersGridConfig: migrated 0.0010s
                              == 20251205120000 CreateModelFieldsTable: migrating
                              == 20251205120000 CreateModelFieldsTable: migrated 0.0104s
                              == 20251205120100 SeedModelFields: migrating
                              == 20251205120100 SeedModelFields: migrated 0.0025s
                              == 20251211120000 CreateModelFieldSectionsTable: migrating
                              == 20251211120000 CreateModelFieldSectionsTable: migrated 0.0080s
                              == 20251211120200 SeedModelFieldSections: migrating
                              == 20251211120200 SeedModelFieldSections: migrated 0.0054s
                              == 20251215120000 SeedOrderProductsGridConfig: migrating
                              == 20251215120000 SeedOrderProductsGridConfig: migrated 0.0010s
                              == 20251216120000 AlterOrderLogsTable: migrating
                              == 20251216120000 AlterOrderLogsTable: migrated 0.0098s
                              == 20251222120000 SeedDeliveriesGridConfig: migrating
                              == 20251222120000 SeedDeliveriesGridConfig: migrated 0.0010s
                              == 20251223120000 SeedVendorModelFields: migrating
                              == 20251223120000 SeedVendorModelFields: migrated 0.0027s
                              == 20251223130000 SeedVendorsGridConfig: migrating
                              == 20251223130000 SeedVendorsGridConfig: migrated 0.0008s
                              == 20251231140000 SeedCategoryProductsGridConfig: migrating
                              == 20251231140000 SeedCategoryProductsGridConfig: migrated 0.0007s
                              == 20260107120000 FixOrdersGridFilterable: migrating
                              == 20260107120000 FixOrdersGridFilterable: migrated 0.0006s
                              == 20260108001501 AddProductCardUiToFrontendAssets: migrating
                              == 20260108001501 AddProductCardUiToFrontendAssets: migrated 0.0005s
                              == 20260119120000 RenameModelFieldsRankToSortOrder: migrating
                              == 20260119120000 RenameModelFieldsRankToSortOrder: migrated 0.0018s
                              == 20260119220000 UpdateOrdersGridStatusFields: migrating
                              == 20260119220000 UpdateOrdersGridStatusFields: migrated 0.0010s
                              [MiniShop3] Database migrations completed
                              ✅ [MiniShop3] Manager API custom routes file created at: core/config/ms3_routes_manager.custom.php
                              This file will NEVER be overwritten. Safe to customize!
                              [MiniShop3] Could not create Web API custom routes example (optional)
                              📁 [MiniShop3] System routes are in: core/components/minishop3/config/routes/
                              [MiniShop3] Scheduler not installed, skipping task registration. Install Scheduler component to enable background task processing.
                              Успешно установлен пакет minishop3-1.2.2-beta1
          Александр
          Александр Старожил
          13 января 2026, 20:13
          MODX на данный момент, на мой взгляд, единственная адекватная система для построения любых сайтов.
          Я пробовал Ларавель, пробовал Джанго, это фреймворки, не говоря про различные CMS. На модексе гораздо комфортнее, логичнее и проше.
          Года с 2012 делаю исключительно на модекс, начинал с ЭВО.
          Данная новость это настоящий прорыв, которого дооолго ждали и хотелось бы надеяться что модекс продолжит свое развитие.
          Спасибо за труд.
            Андрей
            Андрей Старожил
            16 января 2026, 14:05
            Поддержал рублем и купил доп, надеюсь не забросите развитие
            Добавите плз возможность редактирование цен из списка товаров, не заходя на саму страницу товара
            кнопку применения фильтра сделал бы в одну линию фильтрации
            Очень ждем шуструю фильтрацию, при больших объемах товара
              Николай Савин
              Николай Савин Администратор
              16 января 2026, 15:33
              Поддержал рублем и купил доп, надеюсь не забросите развитие
              За мной не заржавеет.
                Сергей
                Сергей Старожил
                18 января 2026, 12:21
                Я посмотрел информация по обновлению 3 версии магазина, но не тестировал еще. Если такое можно, сделать (может уже реализовано) как у всех крупных маркетов, сделать сохранение и выбора адресов и данных пользователя, что бы пользователем было проще делать повторные заказы.
            Дмитрий
            Дмитрий Старожил
            20 января 2026, 16:52
            Добрый день, при загрузке изображения ошибка в логах
            [2026-01-20 16:50:09] (ERROR @ /home/core/src/Revolution/modX.php : 1794) Unable to load processor for action "MiniShop3ProcessorsProductGet", it does not exist as an autoloadable class that extends \MODX\Revolution\Processors\Processor, and also not as a file in "/home/core/components/minishop3/src/Processors/MiniShop3ProcessorsProductGet.class.php"
              Николай Савин
              Николай Савин Администратор
              20 января 2026, 16:56
              Подтверждаю — исправим.
                Николай Савин
                Николай Савин Администратор
                20 января 2026, 17:38
                Выпустил патч — обновляйся проверяй
                  Дмитрий
                  Дмитрий Старожил
                  21 января 2026, 11:57
                  спасибо
                Евгений
                Евгений Старожил
                29 января 2026, 14:29
                Николай, не работает галерея от слова совсем
                n13foxbkru.temp.swtest.ru/download/bag_minishop.mp4
                В логах -пусто, права на /assets/images/products 777 выставлял
                  Ivan K.
                  Ivan K. Старожил
                  29 января 2026, 18:19
                  кнопку зеленую (Upload 4 files) надо нажать, чтобы фотки попали в гелерею, сам не сразу сообразил)
                    Николай Савин
                    Николай Савин Администратор
                    29 января 2026, 18:34
                    Евгений, вопрос закрыт?
                    Я на всякий случай уточню. В загрузчике встроена обработка изображений. Можно загруженного фото обрезать, развернуть и т.п. После применения изменений уже сохраняем то, что получилось. Так что делать автоматическое сохранение не вижу смысла.
                    Ivan K.
                    Ivan K. Старожил
                    30 января 2026, 17:41
                    Николай планируется ли в ближайшее время разработка аналога компонента msOptionsPrice2? или не ждать и самому решать эту задачу?
                    Лично для меня это последний нужный компонент для переноса магазинов с miniShop2 на MiniShop3
                      Николай Савин
                      Николай Савин Администратор
                      30 января 2026, 17:55
                      Уже практически готов, допиливаю детали. В течение недели думаю релиз будет
                      Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
                      38