just photo

Переезжаем на Drupal 6

Julia 08/01/2009

Наконец-то я собралась обновить наш сайт до Drupal 6 (текущая версия уже 6.8).
Переезжали мы с Drupal довольно старой версии из ветки 5.x.

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

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

Основная документация по апгрейду на drupal.org:
http://drupal.org/upgrade/tutorial-introduction

Очень полезная статья - кратко и то что нужно на русском:
http://drupaldance.com/blog/переезд-на-drupal6
включает скринкаст.

Здесь есть screencast:
http://www.masteringdrupal.com/screencast/upgrading-to-drupal-6
(на английском)

А вот мое очень краткое резюме или основные этапы перехода,
по опыту сайта ViJu:

Замечание: не забывайте делать бекапы, и не только между основными этапами обновления!

  1. создаем локально копию сайта, который собираемся обновить
    (настоятельно рекомендую до окончания процесса обновления иметь доступ к рабочему варианту сайта,
    того, что был на D5);
  2. переводим сайт на сервере (тот что еще на D5) в режим обслуживания сайта
    admin/settings/site-maintenance
    (дабы в процессе перехода не потерять, например, новые комментарии);
  3. теперь обновляем все модули, базу и ядро друпал до последней версии доступной в ветке 5.x
    (если сайт не слишком сложный можно попробовать обновить сначала одновременно все модули,
    потом ядро друпал, но возможно придется обновлять небольшими частями);
  4. теперь, когда на 5-ке вы все проверили и все работает хорошо, переходим к обновлению на 6-ю версию.
    переключаем тему на стандартную, например Garland;
  5. заходим на сайт под user #1;
    отключаем все-все модули (без их удаления из базы совсем),
    я также убрала все файлы модулей из каталога Drupal (т.е. вынесла их за пределы инсталляции D)
  6. обновляем ядро Drupal до последней версии в ветке 6.x,
    т.е. скачиваем D6, переписываем все файлы в корне, и обновляем базу update.php
  7. следующим этапом обновляем CCK, затем views
    (обновляйте эти модули по очереди, см. подробнее тут http://www.masteringdrupal.com/screencast/upgrading-to-drupal-6),

    с views скорее всего придется работаться вручную,
    после того как обновлен модуль и конвертированы все списки проверьте каждый из своих списков и доделайте то, что нужно,
    здесь как раз и пригодится "живой" старый сайт - просто открываете настройки каждого списка в D5 и вносите необходимые изменения уже в D6;

  8. теперь можно перейти к обновлению остальных модулей,
    те модули, которые связаны с базой желательно обновлять по одному
    (заменяем модуль, upadate.php)
    те, что с базой не связаны можно и просто все (или почти все :) это как повезет) обновить сразу;
  9. и последним этапом портируем свою тему,
    здесь скорее всего понадобится просто написать файл .info,
    и изменить названия переменных регионов в page.tpl.php,
    а также:

    "Если вы использовали темизацию Views в template.php, вам придется полностью переписать этот код, так как в новой версии все значительно поменялось — сделан большой упор на темизацию в шаблонах, теперь почти никаких функций в template.php не нужно.

    Это касается и темизации CCK."

    справочник по портированию тем с 5.x на 6.x
    http://drupal.org/node/132442

Ну вот и все! Успешного и быстрого вам переезда!

P.S. перед тем, как начать переезд обязательно ознакомьтесь с ссылками, которые я дала в начале - вы сэкономите своё время!

тэги:

При апгрейде уберкарт может понадобится переопределить
картинки продукта.
У меня, например, по умолчанию они не прицепились так как надо,
хотя поле присутствовало.

Чтобы исправить - идем в настрки типа контента Product
и в специальном поле выбираем существующее cck поле с картинкой.

Отправить новый комментарий

Содержимое этого поля хранится скрыто и не будет показываться публично.
  • Адреса страниц и электронной почты автоматически преобразовываются в ссылки.
  • Allowed HTML tags: <a> <em> <strong> <cite> <code> <ul> <ol> <li> <dl> <dt> <dd> <img>
  • Автоматический перевод строки.
  • Вы можете публиковать код, размещая его в <code>...</code> (generic) или в <?php ... ?> (раскрашенный PHP).

Дополнительная информация о настройках форматирования