Перейти к содержимому

RadicalMart 2 -> RadicalMart 3: миграция


Переход с RM2 на RM3

Этот гайд описывает практический порядок миграции сайта с RadicalMart 2 на RadicalMart 3: подготовить копию, установить RadicalMart Updater, обновить пакет RadicalMart, запустить консольную команду и проверить результат.

Сначала локальная или отдельная копия

Не запускайте миграцию сразу на рабочем сайте. Сначала выполните весь процесс на копии с актуальной базой данных и файлами, проверьте плагины, шаблонные переопределения, оформление заказа, оплату, доставку, карточки товаров и страницы категорий.

Платная услуга миграции

Если хотите поручить переход специалистам RadicalMart, доступна платная услуга миграции. Детали, сроки и условия можно уточнить в Telegram или Max.

Короткий маршрут

1. Подготовьте копию

безопасная площадка
Скопируйте файлы и базу сайта на локальный стенд или отдельный сервер. Проверьте, что копия открывается, а админка Joomla и RadicalMart доступны.

2. Установите Updater

плагин миграции
Скачайте последний релиз RadicalMart Updater, установите его через менеджер расширений Joomla и убедитесь, что плагин группы radicalmart включен.

3. Установите RadicalMart 3

основное обновление
Установите пакет RadicalMart 3 поверх копии сайта. Для RM3 требуются Joomla 5.2+, PHP 8.1+, MySQL 8.0.21+ или MariaDB 10.4.1+.

4. Запустите CLI

перенос структуры и данных
В терминале сервера выполните команду миграции Joomla CLI и дождитесь завершения всех стадий. После этого проверьте сайт на копии.

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

  1. Создайте копию сайта и убедитесь, что у вас есть доступ к терминалу, файловой системе и резервной копии базы данных.
  2. Установите плагин RadicalMart Updater. Он добавляет CLI-команду миграции и позволяет корректно пройти переход с RM2 на RM3.
  3. Установите пакет RadicalMart 3. Если Updater не установлен или выключен, прямое обновление с RM2 может быть остановлено сообщением о необходимости миграции.
  4. Подключитесь к серверу по SSH или через терминал панели управления и перейдите к окружению, где доступен CLI PHP нужной версии.
  5. Запустите команду radicalmart:updater:3.0.0 через cli/joomla.php из корня сайта Joomla.
  6. После завершения проверьте админку RadicalMart, витрину, оформление заказа, меню, интеграции и кастомные доработки. Только после успешной проверки планируйте перенос на рабочий сайт.

Команда миграции

Запуск из терминала

/bin/php83 /SITE_ROOT/cli/joomla.php radicalmart:updater:3.0.0
Часть командыПримерЧто означает
PHP CLI
/bin/php83
Путь к консольному PHP на сервере. На хостинге он может отличаться, поэтому используйте путь из панели управления или инструкции провайдера.
Joomla CLI
/SITE_ROOT/cli/joomla.php
Консольный вход Joomla в папке сайта. /SITE_ROOT заменяется на реальный корень сайта.
Команда Updater
radicalmart:updater:3.0.0
Команда плагина RadicalMart Updater для перехода на структуру RadicalMart 3. Она доступна после установки и включения Updater.

Что делает миграция

Updater выполняет стадии последовательно: обновляет параметры компонента, структуру таблиц, пункты меню и затем пересохраняет товары и мета-товары через модели RadicalMart. На больших каталогах финальные стадии могут занимать заметное время.
ОбластьГдеСуть изменения
Параметры
config
Переносятся настройки входа, приватности и дополнительного меню пользователя в параметры RM3. После миграции стоит открыть настройки компонента и проверить код входа, приватность и user-agent.
Товары
products
В #__radicalmart_products добавляются поля маршрутизации категорий, дополнительных категорий, связанного мета-товара и журнала изменений. Старые поля категорий и сортировки удаляются после переноса.
Мета-товары
metas
В #__radicalmart_metas добавляются поля категорий, дат, авторов, текста, поиска, цен, остатков и дополнительных параметров. Вариативность товаров связывается через meta_variability.
Категории
categories
Старые счетчики товаров и мета-товаров переносятся в JSON-поле totals. Центральная таблица #__radicalmart_categories_items получает связи товаров, категорий, фильтров, остатков, цен и сортировок.
Поля
fields
Старое поле fieldset разделяется на fieldset_administrator и fieldset_site, чтобы наборы полей можно было различать для админки и витрины.
Меню
menu
Пункты меню RadicalMart со старым видом view=categories переводятся на view=category, а layout сохраняется в параметрах пункта меню.
Пересохранение
models
Товары и мета-товары пересохраняются пачками через административные модели. Это пересобирает поисковые данные, связи с категориями, фильтры, цены и остатки, а также вызывает плагины, участвующие в сохранении.

Проверка после завершения

  • Откройте админку RadicalMart: товары, категории, мета-товары, заказы, покупатели, способы доставки и оплаты.
  • Проверьте витрину: страницы категорий, карточки товаров, поиск, фильтры, цены, остатки и URL пунктов меню.
  • Пройдите тестовый заказ на копии сайта: корзина, данные покупателя, доставка, оплата, статус заказа и письма.
  • Проверьте настройки компонента: код входа, приватность, дополнительное меню пользователя, складской учет, SEO и параметры вариативных товаров.
  • Проверьте кастомные плагины и шаблонные переопределения, особенно если они обращались к старым полям категорий, сортировки, наборам полей или старому виду меню.

Если миграция остановилась

Обновление RM3 не начинается

Updater не включен
Установите и включите плагин radicalmart/updater, затем повторите установку пакета RadicalMart 3 на копии сайта.

Ошибка на товаре или мета-товаре

сохранение модели
Финальные стадии используют модели RadicalMart. Исправьте данные или временно отключите несовместимый обработчик на копии, затем повторите команду миграции.

Кастомный код RM2

совместимость
Проверьте обращения к старым полям categories, pathway, ordering_price, fieldset и к меню view=categories.

Нужен откат

резервная копия
Надежный откат - восстановить полную копию файлов и базы данных, сделанную перед миграцией. Не откатывайте только отдельные таблицы, если уже менялись структура, меню, модули и параметры компонента.

Скриншоты процесса

Сообщение RadicalMart о необходимости миграции

Блокировка прямого обновления

Сообщение о необходимости миграции перед переходом с RM2 на RM3.
Начало выполнения команды RadicalMart Updater

Начало команды Updater

Первые стадии обновления структуры и переноса данных.
Продолжение выполнения команды RadicalMart Updater

Обработка данных

Стадии обработки товаров, мета-товаров и связанных данных.
Завершение выполнения команды RadicalMart Updater

Завершение

Финальные стадии миграции и завершение вывода в терминале.