Интернет Windows Android

Как обновить джумла 3.5 1 пошаговая инструкция. Как обновить Joomla до последней версии

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

Важно!

Перед тем как приступать к обновлению сайта, обязательно сделайте копию файловой системы и базы данных MySQL !

Или же проводите обновление на копии вашего сайта . Я это делаю на вновь созданном поддомене и на скопированной базе данных. Нужно не забыть поменять в файле configuration.php настройки на скопированную БД. Еще неплохо было бы вести отдельный файл логов сервера, чтобы потом понимать почему вместо сайта белый экран .

Важно 2!

Перед тем как приступать к обновлению сайта, Вам нужно убедиться, что расширения (компоненты, модули, плагины), установленные на сайте могут поддерживаться новой версией Joomla 3 . Все установленные расширения нужно обновлять отдельно, в каждом случае индивидуально.

Считаем, что вышесказанное вы уже сделали.

Походу обновления я буду описывать проблемы, когда что-то у меня пошло не так. Я хочу обновить сайт на Joomla 2.5.14 до версии 3.5 . На нём присутствует компонент JComments и несколько сторонних модулей.

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

Для начала мне нужно обновить версию Joomla до последней в линейке 2.5 - это версия Joomla 2.5.28. (Учтите, что если вы произведёте обновление с версии ниже чем 2.5.28 сразу на 3.x, то скорее всего получите мёртвый сайт.)

Сохраняемся, идём в Расширения -> Менеджер расширений -> Обновления

Обновляем то, что может обновиться (у меня, к примеру, не смогли обновиться 2 расширения).

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

Если после этого не появилось найденных обновлений, идем в менеджер расширений -> Обновления и очищаем кэш. Затем снова проверяем обновления. У меня было найдено обновление Joomla 2.5.28, чего и добивались... Кстати, если в итоге не получилось этого сделать, а скорее это так, то можно скачать файл обновления Joomla до версии 2.5.28 и обновиться вручную...

Для этого скачиваем нужный нам пакет, и заливаем файлы по фтп с заменой.

Итак, жмём на кнопку "Установить обновление"... Ждём немного... В итоге, должно появиться радостное сообщение "Ваш сайт был успешно обновлен. Версия Joomla 2.5.28. " ОК!

Потом идём в Менеджер расширений -> Управление и отключаем все компоненты, модули и плагины, которые устанавливали самостоятельно. Я отключил всё, что касается JComments, была нестандартная капча, плагин Sourcer и ещё что-то;)

Если Joomla сразу не найдёт обновление, опять повторяем процедуру очистки кэша в менеджере расширений. Возвращаемся в панель управления - видим, что найдено обновление Joomla 3.5 .

Опять заходим "В кнопочку" и жмём Установить обновление

Наблюдаем это...

После установки обновления Joomla меня выкинуло на страницу входа в админку, а вместо самого сайта - белый экран! О ужас! Этого боится каждый сайтовод! Именно поэтому все говорят - на рабочем сайте обновлений не делайте, делайте их на копиях сайта! Делайте бэкапы!

Ну ничего страшного, соответственно "морда" сайта не отображалась потому что шаблон сайта не поддерживается третьей жумлой. Всё равно я собирался его менять на другой.

Заходим в админку, в менеджер шаблонов, ставим любой стандартный... Всё сайт отображается, контент на месте - далее дело техники!

Спустя пару дней после обновления до Jоomla 3.5 выявился косяк! Спустя какое-то время, сайт начал выпадать в 500 ошибку, чтобы его перезапустить, требовалось перезапустить весь сервер (Apache). Просмотрев логи, выяснилось, что виновен в этом плагин Sourcer, который позволял размещать произвольный php и javascript код в тексте материала. Пришлось отключить его. Ошибка в логах была такая:

[:error] PHP Fatal error: Cannot redeclare class NNCache in /www/site.com/plugins/system/nnframework/helpers/cache.php on line 14,

Кроме того, выявил, что после обновления до Jоomla 3.5 не работают кнопки "Сохранить" и "Сохранить и закрыть" в админке сайта . Мне помогла в этом случае комбинация клавиш Ctrl + F5...

Обновление JComments 2.3.0 до JComments 3.0.5

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

Шаблон у меня был стандартный, поэтому просто удалил версию JComments 2.3.0 через менеджер расширений и установил свежескачанный пакет JComments 3.0.5. Всё! Комментарии вернулись на свои места.

Ссылка в логотипе ссылается на текущую страницу, а не на главную

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

Итак, решение:

Нам нужно поправить файл плагина SEF. Этот файл расположен тут

/your.site/plugins/system/sef/sef.php

В данном файле, меняем в 93 строке, в самом её конце знак "+" на "*". Должно получиться так

Было: $regex = "#\s+" . $attribute . ""(?!/|" . $protocols . "|\#|\")([^"]+ )"#m"; стало: $regex = "#\s+" . $attribute . ""(?!/|" . $protocols . "|\#|\")([^"]* )"#m";

Моя первая попытка обновить сайт до Joomla 3.7, привела к ошибке PLG_QUICKICON_PHPVERSIONCHECK. Почему это получилось и как без ошибок обновиться до Joomla 3.7 в этой статье.

Напомню. Вы увидите сообщение о необходимости обновления системы, если у вас включен плагин «Панель иконок - Уведомление о новых версиях Joomla!», ID=437.

Об ошибке PLG_QUICKICON_PHPVERSIONCHECK

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

С другой стороны, не всё понятно. У меня на сервере стоит PHP 5.4.26. До обновления это версия PHP «всех» устраивала, а для Joomla 3.7, получается, нужна более новая версия PHP?

Чтобы понять проблему, идем на страницу «Технические требования для установки Joomla» (https://downloads.joomla.org/ru/technical-requirements-ru ).

Данная страница обновлена 20 марта 2017. Информация на странице не поменялась, для работы Joomla, в том числе Joomla 3.7, требуется минимальная версия PHP 5.3, и рекомендованы PHP 5.6 или PHP 7.

По всей видимости, причина ошибки PLG_QUICKICON_PHPVERSIONCHECK в недостаточной версии PHP. Остается поменять версию PHP 5.4.26. на сервере и после восстановления сайта из резервной копии, обновиться заново.

class="eliadunit">

Обновление по FTP

Для эксперимента, обновлюсь без смены версии PHP по FTP. Для этого:

  • Скачиваю тут (https://downloads.joomla.org/ru/cms/joomla3/3-7-0 ) файл Joomla! 3.7.0 Upgrade Package (.zip);
  • Распаковываю скачанный архив;
  • Проверяю права CHMOD для файла configuration.php системы, они должны быть, как минимум, 644;
  • Закачиваю архив обновления поверх старого, по FTP в режиме «Заменить более новым».
  • Смотрю результат, как и ожидалось, обновление не удалось.

Выводы

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

Автоматическое обновление Joomla

  • Очистите кэш сайта;
  • Сделайте резервную копию сайта;
  • Если используете не проверенные расширения малоизвестных авторов, отключите их на вкладке Расширения>>>Управление;
  • Перейдите на вкладку обновления (Компоненты>>>Обновление Joomla!);
  • Обновите систему в режиме автоматического обновления с записью «Напрямую»;
  • Удачное обновление система проинформирует зеленой полосой;

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

Еще одна ошибка

После обновления выскочила "традиционная ошибка" : Fatal error: Call to a member function getTag() on a non-object in /libraries/cms/application/site.php on line 456 . Выражается эта ошибка белым экраном после написания новой статьи или редактиовании старой. Появляется не везде, исправляется так.

От автора: приветствую Вас, дорогой друг. Система управления контентом Joomla за время своего существования очень активно развивается и совершенствуется, в плане функционала и удобства работы, что предусматривает регулярный выход новых версий данной CMS. А значит, у начинающего разработчика может возникнуть вполне законный вопрос – как обновить Joomla, до последней актуальной версии. Поэтому в данной статье я постараюсь ответить на данный вопрос.

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

Важное замечание: если сайт уже разработан и введен в работу — перед обновлением настоятельно рекомендую, сделать резервную копию сайта, во избежание утери контента или нарушения работоспособности CMS. Конечно, обновление – это достаточно простой процесс, но все же, при этом выполняется замена и перезапись некоторых файлов, а значит, могут возникнуть ошибки. Если Вы еще совсем новичок в работе с выше указанной CMS, и не знаете, как создается резервная копия сайта – Вам будет полезен наш курс по CMS Joomla

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

Проверка версии Joomla

Первым делом необходимо проверить версию, используемой CMS, а значит и необходимость установки обновлений. Для этого переходим в панель администратора и если Вы используете не актуальную версию — на главной странице, сразу же будет отображено сообщение о необходимости обновлений:

Если же Вы только разрабатываете сайт, и доступа для сайта в интернет нет, то для определения версии, используемой CMS, переходим по ссылке “Информация о системе” из главного меню “Система”:

И определяем версию CMS:

Если же версии не совпадают – требуется обновление.

Как обновить Joomla 3 в автоматическом режиме?

Итак, давайте разберем, как обновить Joomla 3 в автоматическом режиме. Для этого переходим в панель администратора, далее пункт главного меню “Компоненты” и переходим по ссылке “ Обновление Joomla!” :

Современные тенденции и подходы в веб-разработке

Узнайте алгоритм быстрого роста с нуля в сайтостроении

При этом мы попадаем на страницу менеджера обновлений, где нажав на кнопку “Установить обновление” Вы запустите процесс обновления CMS. Но перед этим убедитесь, что используемые Вами расширения – совместимы с устанавливаемой версией.

После успешного обновления, на экране Вы увидите следующее сообщение:

Как обновить Joomla вручную?

Теперь давайте поговорим о том, как обновить Joomla вручную. Ручное обновление предусматривает скачивание специального пакета обновления Joomla, и установку его в систему. При этом будет выполнено обновление версии CMS.

Для этого переходим на официальный сайт в раздел загрузок и переходим по ссылке “Upgrade Packages Joomla! 3 upgrade packages”:

Далее скачиваем пакет обновлений в формате zip архива и устанавливаем в CMS Joomla, используя менеджер расширений. Опять же напоминаю, перед обновлением, убедитесь, что используемые расширения совместимы с новой версией:

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

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

На этом данная статья завершена. Удачного кодирования и до новых встреч!

Современные тенденции и подходы в веб-разработке

Узнайте алгоритм быстрого роста с нуля в сайтостроении

По распространённому в среде дворников и коновалов мнению, Joomla линейки 3x обновляется одним нажатием кнопки в административной панели. Разочарую, «в один клик» работает только смывной бачок над унитазом, а для update CMS придётся найти на дне разума логику и фантазию. Я не буду заглядывать в материи, зачем нужно обновление, скажу лишь, что дело это полезное и важное для безопасности сайта.

Делать нечего ради, сегодня я обновил один сайт с Joomla 3.5.1 на 3.6.5, для чего потребовалось минут 15. Что-то много для одного клика. Имеющим уши, ниже я дам пару советов и рекомендаций по обновлению движка, а также поведаю какие файлы CMS обновляются в процессе апгрейда.

Какие файлы обновляются

При обновлении движка заменяются файлы ядра CMS, то есть, те файлы, которые самой Joomla. Если вы устанавливали сторонние плагины и модули, то их update не коснётся. Нет проблемы? Есть, так как нормальный сеошник всегда даст волю фантазии разума и изменит некоторые системные файлы для оптимизации движка под свой интерес.

Например, у меня правки вносились в:

  1. css шаблона,
  2. Файл default.php по адресу components/com_content/views/article/tmpl/.

Где-то правил стили, где-то вертел вывод заголовков, так как вариант по умолчанию вызывал у меня душевные судороги.

При обновлении эти файлы, а также фавиконка, будут заменены по «родные», поэтому придётся их восстановить (бэкап в руки).

Ошибка Update

Для update через админку Джумла на хостинге должны быть включены исходящие подключения к сайту. Как они включаются на Спайс веб видно на скрине вверху, на других хостах стучите в поддержку.

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

  1. Включили исходящие подключения,
  2. Обновили сайт,
  3. Откатили пару-тройку нужных файлов из бэкапа,
  4. Выключили подключения.

Отвлёкся, но может кому пригодится.

Итак, если исходящий трафик отключён, то при попытке обновления появляется бяка:

Обновление: Не удалось открыть обновление сайта # 1 "Joomla ядра!", URL: https://update.joomla.org/core/list.xml

Идёте на хостинг (пишете хостеру), включаете подключения и спокойно обновляетесь (компоненты – обновления Joomla).

Восстановление нужных файлов

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

Итак у вас есть сайт на Joomla 3.4.х, который вам нужно обновить до последней версии (на момент написания статьи это версия 3.8.0).

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

Обязательно делаем бекап файлов сайта и базы данных!
Так как всегда что-то может пойти не так как задумано)

ЭТАП 1. Обновляем Joomla 3.4.x до версии 3.4.5


ЭТАП 2. Обновляем Joomla 3.4.5 до Joomla 3.5.1

  1. Идем по ссылке и качаем патч Joomla! 3.5.1 Upgrade Package (.zip)
  2. Далее повторяем пункты 2-5 из ЭТАПЕ 1

ЭТАП 3. Обновляем Joomla 3.5.1 до Joomla 3.6.0
(самый обширный этап обновления)

  1. Идем по ссылке и качаем патч Joomla! 3.6.0 Upgrade Package (.zip)
  2. Далее нужно распаковать этот архив на вашем ПК и залить полученные файлы на ваш хостинг по фтп с заменой файлов.
  3. Переходим "Расширения->Менеджер расширений" и в левом меню выбираем "База данных" и опять видим что наша база данных устарела
  4. Жмем кнопку "Исправить".
  5. После того как вы обновили Joomla до версии 3.6.0 ОБЯЗАТЕЛЬНО нужно установить компонент обновления и другие обновления.

    Для этого идём "Расширения->Менеджер расширений->Обновления (Update)" и жмём кнопку "Найти обновления" , в результате получим список требуемых обновлений. Тут нам нужно выбрать обновления для:
    • Joomla! Update Component Update
    • Weblinks Extension Package
  6. Сначала обновляем Joomla! Update Component Update и только потом Weblinks Extension Package . Так же можете обновить Языковой пакет .
  7. Теперь перейдём "Расширения->Менеджер расширений->Установка (Install)" и увидим такую картину:

    причем если кликнуть по ссылке Plugin Manager вы скорее всего увидите пустой список плагинов. Давайте это исправим, для этого:
  8. Опять перейдём "Расширения->Менеджер расширений->Установка (Install)" и перейдем по ссылке "Plugin Manager" в сообщении об отсутствии плагинов установки и теперь тут мы увидим список требуемых плагинов.
  9. Ставим галочки напротив плагинов: "Installer - Install from ", "Folder Installer - Install from ", "Upload Installer - Install from URL " и жмем кнопку "Включить ".
    Теперь перейдя на "Расширения->Менеджер расширений->Установка (Install)" мы увидим уже привычные нам кладки с разными вариантами установки
  10. Делаем резервную копию файлов сайта и базы данных.

Итак, теперь у нас есть возможность установки патчей прямо из админки без необходимости заливать файлы по FTP.

ЭТАП 4. Обновляем Joomla 3.6.0 до Joomla 3.6.5


ЭТАП 5. Обновляем Joomla 3.6.5 до Joomla 3.7.5
(тоже не менее обширный этап обновления чем третий)


На этом этапе обновления Joomla уже начинает нас предупреждать о том что наша версия PHP 5.4-5.6 устарела и рекомендует перейти на более новую версию PHP7.

ЭТАП 4. Обновляем Joomla 3.7.5 до Joomla 3.8.0
(заключительный этап обновления)


ВНИМАНИЕ!

Переход на более свежую версию PHP7 не только
повысит устойчивость вашего сайта ко всякого рода взломам,
но и примерно в 2 и более раз повысит его быстродействие !

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

автор: