Joomla
Полезные советы при создании сайтов в CMS Joomla.

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


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

Затем надо отключить все расширения, которые вы поставили в вашу Джумлу. Для этого надо перейти в админке в меню Расширения, далее Менеджер Расширений. Там выбираем вкладочку Управление и делаем сортировку по ID так, чтобы самые последние установленные расширения оказались сверху. Там надо аккуратно отключить все сторонние модули, плагины и компоненты, которые вы ставили. Стандартные джумловские расширения не стоит трогать. Шаблоны можно не отключать.

Обновление Joomla

После этого переходим в Компоненты - Обновление Joomla, где нас встречает надпись "У вас уже установлена последняя версия Joomla!, 2.5.28.". Нажимаем справа кнопку "Настройки" и выбираем там пункт "Дистрибутивы Joomla с краткосрочной поддержкой". После этого страничка скорее всего изменится и покажет вам возможность установить обновление.

Обновление Joomla

Если у вас выскочила надпись: "We can't install the update to 3.4.1 as your host doesn't support the minimum requirements for Joomla 3.4.1 and there is no alternative available.", как у меня, то необходимо настроить свой сервер так, чтобы он соответствовал требования Джумлы 3. Вот эти требования (минимальные):

PHP (Magic Quotes GPC off) - 5.3.10
MySQL (InnoDB support required) - 5.1
SQL Server - 10.50.1600.1
PostgreSQL - 8.3.18
Apache (with mod_mysql, mod_xml, and mod_zlib) - 2.x
Nginx - 1.0 
Microsoft IIS - 7

Проверьте какие требования стоят у вас в Сайт - Информация о системе. Чтобы изменить эти данные - впишите в файл .htaccess строчку:
AddHandler application/x-httpd-php53 .php .php5 .php4 .html
(некоторые хостинги могут неадекватно на нее реагировать)

Затем возвращаемся обратно в Компоненты - Обновление Joomla, где нас встречает новая строка:

Обновление Joomla

Выбираем "Записывать файлы напрямую".

Через некоторое время CMS обновится и появится надпись:

Статус обновления Joomla!
Ваш сайт был успешно обновлен. Версия Joomla 3.4.1.



Но это еще не все. Распространненная ошибка в новой версии Джумлы - это надпись "Your host needs to disable magic_quotes_gpc to run this version of Joomla!". Включенные magic_quotes_gpc  приводят к тому, что все при редактировании статей картинки экранируются слэшами и кавычками и перестают отображаться. Чтобы отключить магические кавычки вам надо в папке вашего сайта создать файл php.ini с содержанием:

post_max_size = 20M               ## желательно указать
upload_max_filesize = 20M        ## желательно указать
magic_quotes_gpc = off           ## отключение волшебных кавычки

Затем в вашем .htaccess напишите строку доступа к этому файлу:
SetEnv PHPRC "/home/ххх/public_html/ваш-сайт.ru/php.ini"

Если у вас несколько сайтов, то достаточно создать один .ini файл и в каждом .htaccess указывать путь к нему.

Если это не срабатывает, то у некоторых хостеров все еще проще:

Отключить эту опцию можно путем добавления следующей строки:
php_flag magic_quotes_gpc off
в файл конфигурации веб-сервера – .htaccess

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

Больше информации по ссылке...


Еще интересная ошибка "Class is not defined @ multiselect.js:12"

Просто этот файлик не обновился до актуальной версии. Вам надо открыть его в браузере по адресу ваш сайт/media/system/js/multiselect.js и несколько раз нажать F5.



Возможная ошибка при обновлении (появлялась на 2х сайтах хостинга Reg.ru): 
Fatal error: Call to undefined method JHtml::getJSObject() in /ххх/libraries/cms/html/behavior.php on line 396
Fatal error: Call to a member function get() on a non-object in /ххх/administrator/components/com_joomlaupdate/controller.php on line 35

Ошибка возникала сразу после начала инсталляции и не давала зайти в любой раздел админки. Я пробовала уйму способов обновления и ни один не помог - всегда были те или иные ошибки.
Помогло (внезапно) обновление сайта на другом  (не Рег.ру) хостинге. Вероятно проблема была именно в Reh.ru и настройках сервера, уж не знаю как.

Реклама на сайте

Глюкометр купить в интернет магазине украина
Узнай, как купить дешево качественные зарубежные товары через интернет
medilife.com.ua
Депиляция
Средства для обезболивания при депиляции и эпиляции. Экспресс доставка
koteya.ru