Обновление Drupal 6 до версии 7
В статье показано как обновить CMS Drupal 6 до версии 7.
Получив достаточный опыт обновления ядра Drupal’а (а так же модулей и тем), прошу запомнить одну простую, но очень часто проходящую мимо ушей программистов вещь: всегда делайте резервное копирование! Если есть возможность сохранять резервную копию как MySQL, так и файловой структуры — пользуйтесь этим по-максимуму. А теперь все по порядку…
Итак, представим следующую ситуацию. У нас есть сайт работающий на Drupal версии 6.22 использующий достаточно популярные модули views, pathauto, transliteration и так далее. Нам необходимо обновить ядро drupal до последней, 7-й версии. Стоит заметить, на момент наших обновлений, уже существует версияDrupal 6.24, а последняя стабильная версия — Drupal 7.12.
План действий:
- Обновить ядро Drupal 6, до самой последней, стабильной версии. Т.е. до Drupal 6.24
- Обновить все модули до последних версий
- Подготовить текущую инсталляцию Drupal 6.24 для миграции на новую версию Drupal 7.12.
- Установить последние версии используемых модулей для Drupal 7.12.
- Обновить/переверстать шаблон использовавшийся в Drupal 6 до актуальной версии
- Подготовить сайт к запуску на обновленной инсталляции
- Наградить себя пивом
Для наших задач существует прекрасный инструмент под названием drush и если есть доступ к серверу по протоколу SSH — обновление займет считанные минуты, но про этот способ я расскажу в следующей статье.
Чтобы понять суть обновления, рекомендуется начать с самых сложных условий. Допустим у нас есть только FTP доступ к файловому архиву и логин/пароль к базе данных, с которой мы будем работать через оболочку phpMyAdmin.
- Скачиваем последнюю, стабильную версию Drupal 6 и свежие версии используемых нами модулей которые нуждаются в обновлении.
- Перед обновлением модулей и ядра — делаем бэкап базы данных используя phpMyAdmin. Если есть возможность использовать автоматические «дамперы» — никто же не запрещает, пользуемся!
- Переводим сайт в режим технического обслуживания.
- Обновляем ядро Drupal, для этого удаляем все файлы из корня нашего сайта кроме папки sites(имеется в виду что все, абсолютно все файлы используемые нашим сайтом (темы, модули, css, изображения и прочее) находятся в папке sites/название домена). После удаления, закачиваем в корень сайта последнюю версию ядра — Drupal 6.24. Опять же, кроме папки sites. Логично, она же у нас уже есть. :)
- Обновляем все модули до последних версий не забывая обновлять структуру базы данных используя файл update.php.
- Если сайт использует темы оформления скачанные с сайта drupal.org — их так же необходимо обновить.
- Изменяем тему оформления на одну из стандартных, я рекомендую Garlad.
- Отключаем кэширование и чистим кэш.
- После обновления всех модулей и тем делаем очередной бэкап нашей базы данных. Этот бэкап — стабильно работающий сайт со всеми обновлениями на текущий момент. При миграции на Drupal 7, этот бэкап считаю самым важным. Едем дальше.
- Отключаем все сторонние модули.
- Удаляем все языки отличные от английского.
- Выходим с учетной записи администратора.
- Скачиваем Drupal 7.12
- Снова удаляем все файлы кроме папки sites и заливаем в корень Drupal 7.12 (минуя папку sites).
- Вышли с учетной записи администратора — нам необходимо разрешить обновление структуры сайта без проверки на роль администратора, для этого вносим необходимы правки в файл settings.php нашего сайта.
- Запускаем update.php и обновляем структуру нашей базы данных для Drupal 7.
- После процедуры обновления убеждаемся что наш сайт работает без ошибок, если это не так — устраняем их. В любом случае у нас есть бэкап. :)
- Опять же, делаем бэкап.
- По очереди устанавливаем используемые модулей для Drupal 7 последних версий. После установки каждого модуля обновляем базу данных при помощи update.php.
- Переделываем/скачиваем тему оформления под версию Drupal 7.
- Подготавливаем сайт к запуску (добавляем русский язык, обновляем переводы для всех модулей и ядра и т.д.).
- Снимаем сайт с режима технического обслуживания.
0