Обновление joomla 2.5 до 3.x. Пошаговая инструкция по обновлению движка.

Руководство по обновлению Joomla 2.5 до 3.xЗдравствуйте, уважаемые читатели. Недавно я обновил движок Joomla на одном из своих сайтов с версии 2.5.28 до последней доступной на момент написания статьи версии джумлы 3.3.6. Многих волнуют вопросы типа: нужно ли обновлять джумлу, как обновить Joomla и что нужно для обновления, какие подводные камни могут возникнуть т.д. В этой статье я хочу поделиться с вами опытом по обновлению Joomla с 2.5 до 3.x. Итак поехали.

Нужно ли обновлять движок Joomla с версии 2.5 до 3.x?

Я считаю, что уже пора об этом задуматься, т.к. если вы обновили Joomla 2.5 до последней версии 2.5.28, то не могли не заметить сообщение в административной панели, говорящее о том, что поддержка Joomla 2.5 закончилась 31 декабря 2014 г.

Уведомление об окончании поддержки Joomla 2.5

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

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

1. Первым делом не поленитесь проверить, удовлетворяет ли ваш хостинг системным требованиям для нормальной работы Joomla 3.x. Сейчас уже уважающие себя хостинги удовлетворяют таким требованиям, но лучше проверить, тем более это не долго. Как видно из таблицы требования к апачу у третьей джумлы не изменились (2.x+), а вот требования к PHP и базам данных изменились. Если Joomla 2.5 еще мог работать на PHP 5.2.4+ и на MySQL версии 5.0.4+, то для Joomla 3.x уже нужно как минимум PHP версии 5.3.1 и MySQL версии 5.1.+. Самый быстрый способ проверить версии PHP и MySQL, используемые на вашем хостинге это зайти в админку Joomla, далее в верхнем меню выбрать "Сайт" => "Информация о системе". Мы увидим различную информацию о системе, в том числе текущие версии PHP и MySQL.

Информация о системе Joomla

Если текущие версии ниже минимальных требований (что с каждым днем становится все маловероятней), то придется менять хостинг.

2. Далее вам нужно убедиться в том, что используемый на вашем сайте шаблон работает на джумле третьей серии. Информацию об этом вы можете узнать на сайте разработчика вашего шаблона. Возможно, разработчик шаблона выпустил отдельную версию под Joomla 3.x. Если нет, то, возможно, вам придется озаботиться поиском шаблона для третьей джумлы, а текущий шаблон, который не поддерживает тройку удалить. Как вариант, можно конечно адаптировать шаблон для джумлы 2.5 для работы в joomla 3.x, чтобы сохранить внешний облик сайта. Что мне и пришлось сделать.

3. Далее обновите версию джумлы 2.5 до последней версии 2.5.28.

После обновления до версии 2.5.28 проверьте на всякий случай обновилась ли схема вашей базы данных до версии 5.2.28. Для этого в верхнем меню выберите Расширения -> Менеджер расширений -> вкладка Базы данных. Если вы увидите примерно такую же картину как на рисунке ниже значит ваша база обновилась нормально.

Проверка схемы базы данных MySQL

Если же у вас вместо зеленой галочки нарисован белый "кирпич" в красном круге и выходит сообщение красным шрифтом, что ваша база не обновилась, нажмите на кнопку Исправить в правом верхнем углу.

4. Так-же перед обновлением нужно отключить плагин Система - Запомнить меня. В противном случае может быть проблема со входом в админку после обновления. После обновления данный плагин можно снова включить.

5. Вообще все расширения, которые встроены в дистрибутив joomla 2.5, без проблем будут работать и в джумле 3.x. Проблемы могут возникнуть со сторонними расширениями. Чем больше сторонних расширений, тем сложнее будет переход. Если у вас много сторонних расширений, советую нарисовать на отдельном листке или в файле табличку с двумя столбцами: "Наименование расширения" и "Наличие поддержки джумлы 3.x". Вписать в таблицу наименования всех сторонних расширений (компоненты, плагины, а также модули, установленные через менеджер расширений). Обновляем все найденные расширения до последней версии. При этом надо учитывать, что не все расширения используют механизм автообновления (Расширения -> Менеджер расширений -> вкладка Обновления -> кнопка Найти обновления). Лучше зайти на сайт производителя каждого обновления и посмотреть там наличие последней версии. Далее смотрим, какие из них поддерживают Joomla 3.x. Те расширения, которые не поддерживают тройку придется удалить, в противном случае обновление может закончиться неудачно и сайт может вообще перестать открываться.

Смотрим, возможно у расширений, не поддерживающих тройку, на сайте производителя имеются отдельные дистрибутивы для тройки. В этом случае мы просто установим их сразу после обновления движка. Если же разработчик вообще не выпустил версию для Joomla 3.x, тогда придется искать аналоги данного расширения или можно запросить разработчика будет ли он выпускать версию своего расширения для тройки и в какие сроки.

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

Чтобы увеличить шансы на успешное обновление, можно перед обновлением временно отключить все оставшиеся расширения, которые вы устанавливали сами с момента первоначальной установки. После обновления будем их по очереди включать и проверять работоспособность сайта. Исключение составляют сторонние шаблоны (если они устанавливались), которые в данный момент используются в админке и на сайте. Ведь вы же, как я писал выше, позаботились об установке совместимого с джумла 3.x шаблона. Для отключения заходим в Расширения -> Менеджер расширений -> Управление. Далее сортируем последний столбец ID списка по убыванию. Все расширения, которые вы устанавливали сами, имеют ID начиная от 10000 и выше. Вот их и можно отключить перед обновлением.

Руководство по обновлению версии Joomla c 2.5.28 до 3.x.

Сначала обязательно читаете предыдущий параграф!!!

Я категорически против обновления боевого сайта непосредственно на хостинге. Ведь непонятно как сайт будет функционировать после обновления движка и обновится ли вообще. Я делал следующее.

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

Далее восстановил тестовую копию сайта на локальном вебсервере, например, на денвере.

Далее заходим в админку тестового сайта и выбираем в верхнем меню "Компоненты" => "Обновление Joomla!".

Меню компоненты -> обновление Joomla

Если вы выполнили все шаги из предыдущего параграфа, то у вас будет сообщение, что у вас уже установлена последняя версия Joomla!, 2.5.28.

Жмем на кнопку "Настройки" в правом верхнем углу.

В появившемся окне напротив поля "Сервер обновления" выбираем из выпадающего списка "Дистрибутивы Joomla с краткосрочной поддержкой"

Выбор дистрибутива с краткосрочной поддержкой Joomla

Нажимаем кнопку "Сохранить и закрыть".

У вас появится уведомление о том, что обнаружено обновление Joomla!

В моем случае система обнаружила обновление 3.3.6.

Устанавливаем обновление Joomla

Жмем на кнопку "Установить обновление".

Если все прошло нормально, то ваш сайт откроется. Проверяем версию движка из админки.

Далее при необходимости устанавливаете шаблон, поддерживающий Joomla 3.x. Расставляете все модули в новом шаблоне, доустанавливаете необходимые расширения и проверяете работу всех компонентов.

Если вы перед обновлением отключали расширения как я писал выше, то включаете по очереди их обратно и проверяете работу сайта.

Если все нормально, заливаете обновленный сайт на хостинг взамен старого.

Если сайт после обновления не открывается.

Если вы проделали все рекомендации, описанные выше, то после обновления до тройки сайт должен открываться. Но если все же главная страница сайта перестала открываться, это означает, что какая то компонента (которую вы пропустили), несовместимая с новым движком, мешает нормальному открытию сайта. Без паники! Обычно сайт все же дает попасть в админку. (Если у вас и админка не открывается, читайте ниже). Смотрим внимательно на выводимое на экране сообщение. Обычно в сообщении указывается путь к проблемному файлу и номер строки с проблемным кодом.

Если путь ведет к файлу в папке вашего шаблона, то скорее всего дело в вашем шаблоне. В этом случае вам нужно его сменить на другой, совместимый с Joomla 3.x (если вы не запаслись шаблоном заранее, можете применить один из встроенных шаблонов) и проблема устранится.

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

Если вы не можете определить к какому расширению относится проблемный файл, то открываем данный файл в любом редакторе (я использую notepad ++) и просто удаляем (а лучше комментируем) указанную строку проблемного кода. Далее пробуем обновить главную страницу. После обновления главной страницы сообщение уже может ссылаться на другую строку данного файла или другого файла. Таким образом продолжаете комментировать строки кода в проблемных файлах до тех пор пока сайт не откроется. После этого вы можете задать вопрос на каком нибудь из форумов поддержки joomla или в комментариях к этой статье к какому расширению относятся проблемные файлы, указав путь к ним и удалить данное расширение.

Если админка не открывается после обновления Joomla до версии 3.x.

Если вы не можете попасть в административную панель после обновления сайта, значит вы пропустили какое либо расширение или шаблон, которые не совместимы с третьей джумлой. Как я уже писал выше обычно на экране выводится путь к проблемному файлу, мешающему открытию. Если путь ведет к файлу шаблона, значит нужно его сменить, например, на один из встроенных в джумлу шаблонов: Atomic, Beez5 или Beez_20 . Если путь к файлу ведет в другое место, нужно определить, к какому расширению относится данный файл и удалить данное расширение. Но как удалить расширение или шаблон, если вы не можете попасть в админку? Будем править базу данных. Для этого заходим в phpmyadmin.

Через phpmyadmin мы не можем удалить расширение, но можем его отключить. Этого достаточно, чтобы попасть в админку, а затем уже из админки удалить расширение. Информация о всех установленных расширениях хранится в таблице xxx_extensions, где xxx это префикс таблицы, который у каждого может быть своим.

Для отключения расширения ищем его название в столбце Name таблицы и в столбце Enabled вместо единички ставим нолик.

Отключение расширения через phpmyadmin

Для смены шаблона на другой из phpmyadmin открываем таблицу xxx_template_styles. В этой таблице перечислены все шаблоны, установленные на сайте. Столбец client_id показывает, для какой части сайта предназначен шаблон (0 - для публичной части, 1 - для админки). Столбец Home показывает, какой шаблон сейчас используется по умолчанию (стоит единичка).

Смена шаблона Joomla при помощи phpmyadmin

Из рисунка выше, видно, что для админки могут использоваться шаблоны bluestork, hathor, isis, т.к. у них у всех в стобце client_id стоит единичка. По умолчанию используется шаблон  isis, т.к. у него в столбце home стоит единичка. Таким образом, меняя значения в столбце home мы можем сменить используемый шаблон.

PS: Как всегда буду рад вашим комментариям.

Вы можете помочь проекту, рассказав о нем в социальных сетях:

 

Спасибо!

Добавить комментарий


Защитный код
Обновить