ADBLOCK_MSG
Миграция с Joomla 1.5 на Joomla 2.5. Ч.1. Перенос информационного наполненияОпубликовано: 09.03.2013, 20:06 Автор: Ogri Просмотров: 32965
Миграция с Joomla 1.5 на Joomla 2.5
Предисловие
1. Перенос информационного наполнения
2. Перенос расширений:
2.1. jDownloads и jComments
2.2. Шаблон, редактор и другие расширения
Эпилог
Внимание! Прежде чем читать эту статью и выполнять инструкции в ней изложенные, обязательно прочтите Предисловие!
Я воспользовался известным компонентом jUpgrade. На тот момент его последней версией была 2.5.2. Ею я и продолжаю пользоваться, хотя на момент написания статьи они уже выпустили 3.0 PRO, кардинально отличающуюся от 2.5.2. Я попробовал ее, но запустить с двух попыток так и не смог, и отбросил. Функциональность предыдущей меня продолжает устраивать, по крайней мере те опции, которые я использовал. Почему я отказался от переноса сторонних расширений этой же утилитой, я попытался обосновать в предисловии. А та пара багов, с которой пришлось столкнуться, не смущает, если знаешь легкие способы их обойти. О чем речь - будет ясно из дальнейшего описания.
Скачать jUpgrade можно на сайте производителя - http://redcomponent.com. И обычная, и PRO - бесплатны, денег стоит только подписка на поддержку.
Если кто-то хочет попробовать разобраться с PRO версией jUpgrade, о результатах просьба сообщить.
Итак, что нужно иметь перед началом процесса:
- Архив с компонентом jUpgrade - com_jupgrade-2.5.2.zip.
- Архив с последним релизом Joomla 2.5. Скачать можно с офсайта и кучи других мест. На момент написания статьи это Joomla_2.5.9-Stable-Full_Package.zip.
Предположим, что директория исходного сайта на 1.5 - site1_5, данные расположены в базе с именем db1_5, префикс таблиц - jos_. Новый сайт расположим в папке site2_5, его базу данных назовем db2_5, префикс для примера будет - aaaaa_. Поехали!
- Создаем поддиректорию site2_5 в фолдере site1_5 исходного сайта.
- Распаковываем архив Joomla_2.5.X-Stable-Full_Package.zip в папку site2_5.
- Устанавливаем Joomla 2.5 с базой db2_5 и префиксом aaaaa_. Игнорируем требование удалить директорию 'installation'!
- Логинимся в админку сайта site1_5.
- Устанавливаем компонент jUpgrade стандартным образом через Расширения -> Менеджер расширений -> Установка.
- Идем в Расширения -> Менеджер плагинов. Находим плагин System - Mootools Upgrade. Если он выключен - включаем его, поскольку он требуется для работы jUpgrade.
- Идем в меню Компоненты и выбираем jUpgrade. Кликаем на кнопку Параметры в правом верхнем углу. Настраиваем как на скриншоте:
Заполняем поля 'Target Directory', Prefix for old database и Prefix for new database в соответствии с нашими параметрами. Disable Error Reporting - оставляем 'Нет', чтобы получать информативные сообщения при неудачных попытках, а они, как станет ясно далее, будут иметь место. Выбираем пропустить загрузку и распаковку, поскольку мы уже сами подготовили фолдер нового сайта и установили в нем Джумлу 2.5. Шаблоны и сторонние расширения не переносим по соображениям, высказанным выше. Переносим только данные, для чего отвечаем 'Нет' на предложения пропустить миграцию для всех пунктов раздела Core skips. Delete previous migration - категорическое 'Нет', иначе jUpgrade затрет наш фолдер site2_5.
- Жмем Сохранить.
Прежде чем кликать Начать обновление, научимся бороться с двумя багами данной версии jUpgrade.
Такой странный момент: при первом запуске jUpgrade почему-то игнорирует выставленное в настройках пожелание пропустить загрузку и распаковку и начинает старательно их выполнять. На скриншоте видно, что пошел прогресс скачивания:
Ради интереса один раз довел процесс до конца. Выяснилось, что jUpgrade нашла и скачала далеко не последнюю версию, что-то вроде 2.5.3, и заменила ею уже установленную мной 2.5.9. При этом, подчеркиваю, самодеятельность она проявляет только при первом запуске после установки. Поэтому жмем кнопку Назад и повторно кликаем Начать обновление. Вот теперь загрузка и распаковка действительно пропускаются:
Зато выявляется новая напасть. Этап Процесс обновления выдает результат 'Migrating undefined'. Благодаря включенной опции получать сообщения об ошибках, наблюдаем появление все новых Warnings и Fatal Errors. И так до посинения.
Решение проблемы нашлось на форуме офсайта вот в этом обсуждении, и нашел его пользователь с ником Gerald. Сводится оно к замене строки 43 с
$jconfig->db_type = 'mysqli';
на
$jconfig->db_type = 'mysql';
в файле administrator/components/com_jupgrade/includes/install_config.php
. Это еще один явный баг jUpgrade, они не проверяют настройку SQL Driver, выбор MySql в соответствующем дропбоксе в Параметрах не помогает, приходится изменять его принудительно. Gerald, спасибо!
Поэтому после настройки параметров выполняем два следующих шага:
- Редактируем файл
install_config.php
как описано выше. - Запускаем Начать обновление и сразу нажимаем кнопку Назад.
Вот теперь норовистая jUpgrade укрощена, и можно ожидать от нее корректного выполнения задачи.
- Повторно запускаем Начать обновление. На этот раз процесс должен пройти гладко и завершиться выдачей сообщения 'Joomla 2.5 Upgrade Finished!':
Таким образом мы перенесли из старой базы в новую информацию о пользователях и контактах, структуры меню, категорий и материалов, а также баннеры, веб-линки и RSS-ленты. В дополнение, jUpgrade скопировала фолдер images, переименовав оригинальный в images.orig. Папку media при этом не обновила несмотря на сообщение 'Coping images/media files'. Видимо, имелось в виду, что media-файлы также хранятся в фолдере images. Поэтому, если у вас имеются нужные файлы в других папках - самое время их скопировать на новый сайт.
Теперь можно зайти на новый сайт и в его админку и найти там данные со старого. Убедившись, что все в наличии, можно удалить фолдер installation, а папку самого сайта перенести в нужное место.
Итак, новый сайт получил привычный контент. Можно переходить к установке расширений и переносу их настроек и данных. Об этом - в продолжении.
Новые
-
20.07.2020, 00:53
Joomla 3: Перенаправление на ту же страницу после авторизации -
13.02.2017, 14:09
Joomla: как добавить свои языковые константы или переопределить существующие -
13.02.2017, 13:23
Joomla: Интегрируем reCAPTCHA v2 (NO CAPTCHA) в JComments -
23.06.2016, 10:48
Единая фильтрация вывода модуля mod_jcomments_latest -
13.09.2015, 13:06
Постим иллюстрированные статьи Joomla-сайта на Facebook, используя OG-теги
Популярные
-
118186
Миграция с Joomla 1.5 на Joomla 2.5. Ч.2-1. Перенос jDownloads и jComments -
87345
Joomla: Интегрируем reCAPTCHA v2 (NO CAPTCHA) в JComments -
63784
Редактирование анимированных GIF-имиджей в Photoshop CS3 -
60854
Joomla: как добавить свои языковые константы или переопределить существующие -
44743
Цифровые коды WEB (веб) цветов для сайта
Авторизация
Гитара
Гостевая колонка
Последние комментарии
-
Joomla: Интегрируем reCAPTCHA v2 (NO CAPTCHA) в JComments
-
Тест
25.08.2020 11:37
Не выводит сообщение об ошибке, если галку не нажать в рекапче
-
Николай3333
05.08.2020 07:55
Неужели работает?
-
Дарья Смирнова
29.07.2020 06:02
Здравствуйте, все вроде сделала по инструкции, но точно так же никаких изменений. Разве что теперь ...
-
ТвойБро
24.03.2020 03:42
Огромное спасибо, помогло. Странно, что по дефолту в jcomments предлагает в настройках выбрать ...
-
Валерий
21.02.2020 03:25
Проверка
-
Денис
02.01.2020 21:21
УРАААА! Заработало после очистки кэша сайта! Спасибо!
-
Денис
02.01.2020 20:56
Забыл сказать, что этот вариант установился на сайт, но по-прежнему при использовании reCAPTCHA ...
-
Вованя
25.12.2019 18:31
12345
-
Вованя
25.12.2019 18:31
Проверка, просто проверяю. раз раз раз)
-
Тест
25.08.2020 11:37
-
Миграция с Joomla 1.5 на Joomla 2.5. Ч.2-1. Перенос jDownloads и jComments
-
Андрей67
11.08.2020 16:54
У меня такая же картина, нет кнопки Импорт. как быть?
-
Андрей67
11.08.2020 16:54
Комментарии
==========
[checks]
1
==========
[cleanup]
1
==========
[install_config]
Warning: require_once(C:\xampplite\htdocs\intranew\site2_5\ libraries/joomla/methods.php) [function.require-once]: failed to open stream: No such file or directory in C:\xampplite\htdocs\intranew\administrator\compone nts\com_jupgrade\includes\install_config.php on line 27
Fatal error: require_once() [function.require]: Failed opening required 'C:\xampplite\htdocs\intranew\site2_5\libraries/jo omla/methods.php' (include_path='.;C:\xampplite\php\PEAR') in C:\xampplite\htdocs\intranew\administrator\compone nts\com_jupgrade\includes\install_config.php on line 27
==========
[install_db]
Warning: require_once(C:\xampplite\htdocs\intranew\site2_5\ libraries/joomla/methods.php) [function.require-once]: failed to open stream: No such file or directory in C:\xampplite\htdocs\intranew\administrator\compone nts\com_jupgrade\includes\install_db.php on line 33
Fatal error: require_once() [function.require]: Failed opening required 'C:\xampplite\htdocs\intranew\site2_5\libraries/jo omla/methods.php' (include_path='.;C:\xampplite\php\PEAR') in C:\xampplite\htdocs\intranew\administrator\compone nts\com_jupgrade\includes\install_db.php on line 33
==========
[undefined] [undefined]
Warning: require_once(C:\xampplite\htdocs\intranew\site2_5\ libraries/joomla/factory.php) [function.require-once]: failed to open stream: No such file or directory in C:\xampplite\htdocs\intranew\administrator\compone nts\com_jupgrade\includes\jupgrade.class.php on line 89
Fatal error: require_once() [function.require]: Failed opening required 'C:\xampplite\htdocs\intranew\site2_5\libraries/jo omla/factory.php' (include_path='.;C:\xampplite\php\PEAR') in C:\xampplite\htdocs\intranew\administrator\compone nts\com_jupgrade\includes\jupgrade.class.php on line 89