Обновление Joomla – руководство для начинающих веб- мастеров. Обновление CMS MaxSite

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

Глобальное обновление с переходом на более новую линейку имеет некоторые нюансы, поэтому полезно рассмотреть процесс более подробно.

Подготовка к обновлению

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

Такие пакеты, как правило, имели названия Joomla x.x Update Package . С выходом 2-ого поколения CMS, разработчики дополнили основной функционал встроенным механизмом обновления ядра.

Чтобы обезопасить себя и не потерять данные во время установки новой версии движка, рекомендуется перенести резервную копию сайта на локальный сервер. Выполнить это можно при помощи akeeba backup .

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

На следующем шаге нужно проверить совместимость хостинга с обновленной версией Joomla , для этого в меню «Сайт » выберите пункт «Информация о системе ».

Все настройки, которые отобразятся на открывшейся странице, должны отвечать минимальным системным требованиям разработчика. Эта информация доступна по адресу http://www.joomla.org/technical-requirements.html:

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

В том случае, если обнаружены ошибки, надо нажать кнопку «Исправить », которая находится в правой части страницы:

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

Обновление Joomla

Сначала все операции выполняются на тестовом сайте. Чтобы начать переход к версии Joomla 3.x , нужно перейти в меню Компоненты и выбрать там пункт «Обновление Joomla! ».

В правой части страницы появится кнопка «Параметры », после нажатия которой, откроется окно с настройками:

Здесь следует изменить тип источника обновлений. По умолчанию выбраны «Дистрибутивы Joomla с длительным периодом поддержки ».

На данный момент в линейке 3.x выход такой версии только ожидается, поэтому нужно переключить сервер обновления на «Дистрибутивы Joomla с краткосрочной поддержкой ».

В некоторых случаях кнопка «Установить обновления » появляется не сразу, поэтому необходимо в меню «Расширения » выбрать подменю «Менеджер расширений », где на вкладке «Обновление » нажать кнопку «Очистить кэш »:

Теперь в разделе «Обновление Joomla! » появятся данные о самой последней доступной версии CMS. После установки проверьте базу данных на наличие ошибок.

В случае успешного завершения процесса, следуя инструкции о том, как обновить Joomla , повторите всю последовательность действий для основного сайта.

Удачи Вам!

Хорошо Плохо

    Для создания сложных динамических сайтов веб-мастерами применяется такой метод, как установка joomla на денвер. После этого создаётся новый шаблон сайта, происходит…

Модуль «Обновление CMS» обязателен для установки. Он относится к CMS «Управление» и является частью ядра DIAFAN.CMS. Имеет только административную часть.

Для корректной работы модуля необходимо PHP-расширение ZipArchive.

Автообновление

Модуль позволяет получать обновления для Вашей DIAFAN.CMS с нашего сервера.

При первой установке DIAFAN.CMS создается так называемая «точка возврата», которая содержит резервные копии всех установленных файлов «из коробки». В дальнейшем при получении обновлений, DIAFAN.CMS создает точки возврата и сохраняет отдельно обновленные версии файлов.

Обновления для DIAFAN.CMS проверяются только по Вашему запросу! Необходимо зайти в модуль «Обновление CMS» и нажа кнопку «Проверить обновление». Если для Вашей версии DIAFAN.CMS есть изменения, Вы увидите список обновлений, доступных для скачивания, и под списком будет кнопка «Скачать».

После клика по ней обновления начнут последовательно скачиваться. Если прервать закачку до завершения, при следующей проверке список обновлений будет скорректирован. Продолжить прерванное скачивание можно аналогичным способом – с помощью кнопки «Скачать» под списком. В обновлении могут участвовать все файлы DIAFAN.CMS, в том числе шаблоны, файлы стилей и изображения. При этом пропустить какой-либо из пакетов невозможно, система автоматически проверяет целостность каждого обновления.

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

Как работают обновления?

    Сгенерируется тема . Что это значит? Все полученные обновленные файлы с нашего сервера сравниваются с текущими файлами всей системы в текущей точке возврата. Если DIAFAN.CMS находит, что какие-то текущие файлы системы не соответствуют полученным из обновления, они будут перемещены в папку custom в текущую тему. Если текущей темы нет, то будет создана новая.

    На место перемещенных файлов будут записаны файлы, полученные из обновления. На сайте это никак не отобразится, потому что файлы из текущей темы обладают более высоким приоритетом.

    Если в обновлении предусмотрено изменение структуры базы данных, то оно будет произведено.

Что делать, если функционал обновления не устраивает?

Можно вернуть всё обратно в один клик. Для этого достаточно зайти в модуль «Обновление CMS» и нажать «Применить» напротив любой предыдущей точки возврата. Откат к сохраненному состоянию касается также базы данных. Если с ней были произведены какие-то манипуляции, после применения точки возврата структура БД вернется к прежнему состоянию.

Можно ли удалять точки возврата?

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

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

Как посмотреть детализацию точек возврата?

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

Обновления доступны только для сайтов с активированными лицензиями DIAFAN.CMS.

Подключение

Подключаемая часть – файл . В нем описан класс Update_inc . В модуле к объекту класса можно обратиться через переменную $this -> diafan -> _update . Экземпляр класса создается при первом вызове переменной.

Свойства

Var folders = array("adm", "css", "img", "themes", "modules", "includes", "plugins", "js") – папки и файлы, индексируеме для точек возврата.

Var exclude = array("adm/htmleditor", "includes/custom.php") – папки и файлы, не индексируемые для точек возврата.

Методы

Void first_return () – Добавляет первую точку возврата.

// при установки DIAFAN.CMS
$this -> diafan -> _update -> first_return ();

Array get_files (integer $id) – Получает обновленные файлы точки с содержимым.

// получает файлы точки возврата ID=3
$rows = $this -> diafan -> _update -> get_files (3 );
print_r ($rows );
/* выведит:
Array
[modules/news/news.model.php ] => ...
class News_model extends Model
{
...
[modules/news/news.php ] => ...
class News extends Controller
{
...
...
) */

Array get_all_files (integer $id) – Получает все файлы DIAFAN.CMS в точке с содержимым.

  • integer $id: идентификатор точки

// получает все файлы DIAFAN.CMS, актуальные для точки возврата ID=3
$rows = $this -> diafan -> _update -> get_all_files (3 );
print_r ($rows );
// выведет файлы в формате как функция get_files()

Файлы

    modules/update/admin/js/update.admin.count.js – количество доступных обновлений, JS-сценарий;

    modules/update/admin/js/update.admin.js – обновление, JS-сценарий;

    modules/update/admin/update.admin.php – точки возврата;

    modules/update/admin/update.admin.action.php – точки возврата;

    modules/update/admin/update.admin.count.php – количество доступных обновлений для меню административной панели;

    modules/update/update.inc.php – подключение модуля;

    modules/update/update.install.php – установка модуля.

К нам обращаются владельцы сайтов с разными целями (добавить на сайт новые функции/возможности, выполнить редизайн сайта, сделать адаптивную верстку и т.д.). И первое, на что мы обращаем внимание, - на большинстве сайтов CMS давно не обновлялась. Практически во всех таких случаях в ТЗ дописываем еще 1 пункт - обновление CMS. В этой статье расскажем, почему это важно.

Причины, по которым вам стоит обновлять CMS:

1. Вы подвергаете себя опасности быть взломанным.

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

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

У любого продукта могут быть глюки, которые не сразу «отлавливаются». Поэтому весьма вероятно, что в следующей версии эти ошибки будут исправлены (правда, не исключено, что вылезут новые в новом функционале, поэтому не рекомендуем обновлять CMS в тот же день, как вышла новая версия, подождите, пока ее «потестят» другие, примерно месяц).

3. Ваш сайт устаревает морально и технически.

Когда вы работаете со своим сайтом, то со временем замечаете, что некоторые моменты нужно изменить, чтобы вам и вашим пользователям стало удобнее пользоваться сайтом, или когда вы поняли, что пора делать редизайн сайта (подробнее в ). Например, улучшить поиск, добавить фильтры продукции, поменять принцип отображения фото и т. д. Вы спросите: при чем тут обновление CMS, если можно просто доработать существующие модули/плагины? Можно и доработать, а может, эти функции есть в коробке в новой версии вашей CMS. Тогда вы убьете сразу нескольких зайцев - и новые функции получите, и о безопасности позаботитесь, и используемые фреймворки обновите.

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

Как часто выполнять обновления?

Многие CMS о новых версиях уведомляют в админке с кратким описанием изменений: касаются они добавления новых функций и возможностей, устранения ошибок или проблем безопасности.

На скриншоте ниже пример такого уведомления в админке сайта на WordPress, с активной ссылкой на официальный сайт и описанием возможностей, которые вам будут доступны после обновления:

Админка WordPress с краткими новостями по последним обновлениям CMS и не только

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

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

Как обновлять?

Собираем все учетные записи (база данных, FTP, доступы в админку сайта).

Обновление может осуществляться автоматически, в несколько кликов в админке сайта (рис. 2-4), либо по FTP (для некоторых CMS это возможно только по FTP). Но принцип один и тот же - на сервере обновляются файлы, а в базе данных меняется структура таблиц либо самой базы данных. Обновление базы данных происходит практически незаметно для того, кто производит обновление, обычно от вас требуется только вводить данные для подключения к базе данных и нажимать кнопки «ОК» и «Далее», все остальное скрипт обновления сделает за вас.

Рисунок 2. Автоматическое обновление системы WordPress. Шаг первый — «волшебная кнопка»

Рисунок 3. Шаг второй — смотрим все, что система автоматического обновления нам предлагает «освежить». Тут и сам движок, и плагины (также могут быть темы)

Рисунок 4. Шаг третий, заключительный - отчет о внесенных изменениях и состоянии обновления (иногда могут быть ошибки, о которых мы на этом шаге и узнаем, в таком случае придется восстановить сайт из бэкапа)

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

Обычно о том, какую примерно ручную работу по обновлению сайта с вашей версии CMS на последнюю необходимо будет выполнить, можно почитать на форуме разработчиков вашей системы управления сайтом и/или в документации. Часто для того, чтобы обновить старую версию до последней, нужно сделать обновление в несколько этапов. Например, обновление WordPress с очень старой версии, вроде 2.х до 4.х .

Также нужно быть готовым к тому, что большинство систем управления сайтом не поддерживают обновление шаблонов и существует большая вероятность, что ваш шаблон нужно будет переписывать для корректной работы (например, при обновлении с Opencart 1.5.x до 2.x, с Shop-Script (WebAssist) версии ниже 5 до 5.x/6.x).

Кому делать обновление?

К сожалению, достаточно мало CMS, в которых обновление для непрограммиста проходит гладко и в минимум кликов. Если ваш сайт на системе WordPress, со стандартной темой и минимумом плагинов, работающих с той версией CMS, до которой вы обновляетесь, то большая вероятность, что обновление пройдет гладко для новичка. Но и в этом случае, если вы по какой-то причине хотите обновить систему сами, лучше иметь «под рукой» профессионала, который восстановит ваш сайт из бэкапа, если что-то пойдет не так.

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

Как проверить, все ли правильно настроено, и что именно проверять?

Обязательно нужно удостовериться, что после обновления весь функционал работает корректно.

Давайте рассмотрим минимальный набор тестов корректной работы CMS на примере магазина. Нам нужно сделать следующее:

  • Чисто визуально оценить, нет ли проблем с версткой на главной и всех типах внутренних страниц.
  • Зарегистрировать нового пользователя, сделать покупку, т. е. пройти все шаги заказа от непосредственного оформления заказа до уведомления о доставке пользователю. Все эти шаги выполните во всех доступных вам ролях: пользователя, менеджера, администратора и т.д.
  • Проверить работу фильтров, поиска, постраничной разбивки и т. д.
  • Проверить URL"ы, тайтлы, ключи и описания.

Если что-то работает некорректно, есть два варианта: восстановить сайт из бэкапа либо, если ошибка не критична, попытаться исправить ее на рабочем сайте.

Подведем итоги:

1. Следите за обновлениями своей CMS и обновляйтесь своевременно:
а) для безопасности;
б) чтобы от вашего сайта не веяло 90-ми.

2. Выделяйте время на тестирование обновленной системы (а также просите друзей и родственников о совете и помощи в тестировании).
3. Перед обновлением и, вообще, регулярно делайте бекапы.

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

  • В новых версиях устраняются недостатки, баги, ошибки и "дыры";
  • Появляется дополнительный функционал;
  • Поддерживается современность и актуальность движка.

Но в моем случае дополнительно к этим пунктам добавился 1 очень каверзный баг, который, на мой взгляд, и стал главной причиной резкого с поисковых систем. Графики посещений с Яндекса и Google (по неделям). Стрелочкой указана примерная дата обновления.

Поисковая посещаемость упала более чем на 1000 ежесуточных посетителей.

Замечу, что обновление не носило радикальный характер (обновлялась версия той же линейки). Появился вопрос "Что же повлияло на падение посетителей с поисковых систем". После обновления пользователи начали жаловаться на один баг, который время от времени стал появляться. При клике на одну страницу, форум перекидывал пользователя на другую. В основном, были затронуты URL"ы тем. Также браузер иногда отдавал ошибку о невозможности перехода по указанному урлу из-за циклической переадресации.

Я начал анализировать аккаунты для вебмастера в Яндексе и Google. В гугле после перехода на новую версию движка резко подскочили ошибки, относящиеся к URL - "Переход не выполнен".

Данные ошибки как раз начали появляться сразу после обновления (график начинается немного позднее - с начала марта). Почему баг каверзный? Все просто. Его до сих пор пока никто не смог обнаружить и исправить. Но я не теряю надежды и буду стараться как можно скорее избавиться от него .

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

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

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

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

Кто-нибудь из вас сталкивался с проблемами после обновлений CMS? Поделитесь своим опытом и путями их решения. Желаю всем, чтобы баги и ошибки обходили ваши проекты стороной, а посещаемость с поисковых систем показывала только положительный рост !

Учитывая, что наша веб-студия в своей работе использует только коммерческие платформы для создания сайтов (CMS) – заметим российского производства. Назрела необходимость в публикации, которая бы приоткрыла завесу касаемо необходимости периодического обновления программы.

Если смотреть глазами рядового сотрудника компании Заказчика, который только и выполняет задачи по наполнению контента сайта фирмы (новости, статьи, товары, услуги и т.п.) – то у этого сотрудника не возникает потребности в обновлении платформы сайта. Это все связано с тем, что мало кто понимает, за чем это нужно. Все понимают, что нужно примеру обновлять антивирусные программы на персональном компьютере, или необходимо обновлять браузер – так как это повышает скорость загрузки страниц сайтов, или то, что необходимо обновлять операционную систему. Но, до сайта речь не доходит пока он «жив». Тем, более что сайт не расположен на компьютере сотрудника, а где-то там, на удаленном сервере. Более того, к сайту порой относятся как компьютеру, вызывают специалиста, когда ресурс заразился вирусом или сломался. Но если компьютер легко можно заменить, то на сайт потребуется потратить немало времени чтобы произвести восстановительные работы.

Средний чек технической поддержки и ежегодного обновления программы компании обойдется примерно в 120,000 рублей – немало. А, теперь мы возьмем небольшой интернет-магазин с посещаемостью в среднем 1000 человек в сутки – это около 365000 потенциальных клиентов в год. Предположим, продается в данном on-line магазине – одежда со средней стоимостью в 1,000 рублей. Если все делать правильно, не сложно получить конверсию покупок больше 3-х процентов от целевых посетителей, но мы возьмем и здесь среднее значение. Нам необходимо средний процент умножить на среднюю стоимость и умножить на количество дней, приблизительно вот так: 1,000 (стоимость) х 3% (количество покупателей в день) х 365 (дней в году) = 10,950000 (оборот). И это только пессимистичная оценка оборотов, ведь однажды купивший клиент, может вновь приобрести новую одежду с другой коллекции. Получается, в сутки покупки совершаются на сумму – 30,000 руб.

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

В случае сбоя или заражения вирусом Интернет-магазин прекращает стабильно функционировать, примеру самый простой способ «заразить» сайт это зайти по FTP-соединению через зараженный компьютер и вирус начнет одновременно «дружить» с Вашим сайтом.

Теперь посчитаем стоимость работ и сопутствующие издержки (сразу отбросим возможность вернуть с помощью бэкапа на начальную точку до сбоя или заражения сайта, ведь тем самым мы «прикрываем» саму причину возникновения, плюс это грозит потерей заказов сделанных в промежуток времени от последнего бэкапа до возникновения внештатной ситуации):

В среднем программистам требуется от 2-х до 72-х часов на выявления причин с последующим устранением проблемы (стоимость работы в час от 1,000 рублей);
простой Интернет магазина может составить от 1-го дня (в нашем случаи это сразу потеря 30,000 рублей минимум);
потеря лояльности (не каждый потенциальный покупатель вновь вернется на сайт – если при первом входе он куда-то пропал).

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

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