Перенос сайта на новую Joomla: план без потери данных
У старого сайта на Joomla ценность не ограничивается шаблоном. Это адреса страниц, каталог, материалы, история обращений и привычные действия редактора. План переноса должен учитывать всё это до первого обновления.
Сначала определите способ перехода
Для поддерживаемого проекта с совместимыми расширениями можно рассматривать последовательное обновление. Если сайт пропустил несколько поколений CMS, содержит заброшенный компонент или глубокие изменения ядра, отдельно оценивают перенос данных в новую установку. У этих вариантов разный объём разработки и проверки.
В официальном разделе Joomla о миграции есть инструкции для переходов между конкретными версиями. Нельзя автоматически применять инструкцию для одного перехода к другой исходной версии. Совместимость PHP, базы и расширений проверяют для каждого этапа.
Составьте карту функций, а не список пакетов
Название установленного компонента мало говорит о последствиях его замены. Начните с действий посетителя и сотрудника: выбрать город, отфильтровать товары, отправить запрос, получить письмо, изменить цену. Затем найдите расширение и данные, от которых зависит каждое действие.
| Функция | Что выяснить | Как принять результат |
|---|---|---|
| Контакты по городам | Где хранятся города, номера, адреса и правила переключения | При смене города меняются нужные данные; переход по прямой ссылке работает |
| Каталог | Категории, варианты, связи товаров, изображения и источник обновления цен | Контрольные товары находятся через категории и фильтры; варианты не потеряны |
| Заявки | Обработчик, хранилище, уведомления, интеграции и защита от повторов | Обращение сохраняется и попадает ответственному по предусмотренному каналу |
| Работа редактора | Права, поля, медиатека, меню и порядок публикации | Редактор создаёт и обновляет материал без помощи разработчика |
Решите судьбу собственных расширений
Для собственного компонента нужны исходники и понятная модель данных. Проверяют используемые интерфейсы Joomla, совместимость с целевым PHP, установку и обновление схемы базы, обработку ошибок и права доступа. Совпадение названия пакета не означает, что на двух сайтах установлена одна и та же сборка.
По каждой функции фиксируют решение: обновить существующий пакет, адаптировать код, заменить реализацию или отказаться от функции по согласованию. Данные не удаляют только потому, что старое расширение не запустилось на новой CMS. Сначала проверяют, где они используются и как будут перенесены.
Общая рекомендация Joomla — оценить сторонние расширения до смены основной версии и проверить переход на отдельной копии: Migration Basics.
Репетиция должна включать восстановление
На тестовой копии воспроизводят нужное окружение и выполняют выбранную последовательность работ. Отдельно ограничивают внешние действия: тестовый заказ не должен уходить реальному покупателю, копия сайта — отправлять рассылку или менять остатки в рабочей системе.
Резервная копия должна содержать согласованные файлы и базу. Для проверки её восстанавливают в другой среде и проходят несколько ключевых сценариев. В рабочем плане фиксируют, кто принимает решение об откате и какие признаки считаются основанием для него.
Закрытие тестового сайта от посетителей и запрет индексации решают разные задачи. Проверьте оба условия, а перед запуском убедитесь, что временные ограничения не перенеслись на основной адрес.
Учтите изменения между репетицией и запуском
Пока идёт разработка, действующий сайт продолжает принимать обращения, заказы и правки редакторов. Старый архив нельзя просто восстановить поверх этих данных. Нужен отдельный план переноса изменений за время работы.
Например, для сайта услуг можно согласовать короткую паузу редактирования и отдельно перенести новые обращения. Для магазина потребуется учитывать заказы, статусы, остатки и связи с учётной системой. Длительность паузы и допустимые ограничения определяют для конкретного проекта.
Снимите контрольные количества материалов, категорий, товаров и связанных файлов, затем сравните их после импорта. Одних количеств недостаточно: выберите обычные и сложные записи и проверьте связи, поля и отображение.
Сохраните адреса и проверьте переход
Смена CMS сама по себе не требует менять все URL. Список значимых страниц собирают заранее: услуги, категории, товары, статьи, рекламные посадочные и документы. Для каждого адреса должно быть понятное решение. Подробный порядок разбора — в материале о сохранении контента и адресов при редизайне.
В приёмку включают прямые переходы на внутренние страницы, навигацию, контакты, мобильные диалоги, вход редактора и сохранение материала. Для обращений проверяют весь путь от формы до ответственного, а не только текст об успешной отправке.
Что должно остаться после запуска
Результат переноса — работающий сайт и передаваемый комплект сведений: версии и зависимости, решения по расширениям, карта URL, контрольные сценарии, журнал выпуска и порядок восстановления. Доступы передают владельцу по согласованному защищённому каналу, отдельно от общего отчёта.
Дальше миграция переходит в регулярную поддержку. Если нужно оценить переход конкретного сайта, начните с разбора текущей Joomla и используемых компонентов.