Миграция с 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_. Поехали!

  1. Создаем поддиректорию site2_5 в фолдере site1_5 исходного сайта.
  2. Распаковываем архив Joomla_2.5.X-Stable-Full_Package.zip в папку site2_5.
  3. Устанавливаем Joomla 2.5 с базой db2_5 и префиксом aaaaa_. Игнорируем требование удалить директорию 'installation'!
  4. Логинимся в админку сайта site1_5.
  5. Устанавливаем компонент jUpgrade стандартным образом через Расширения -> Менеджер расширений -> Установка.
  6. Идем в Расширения -> Менеджер плагинов. Находим плагин System - Mootools Upgrade. Если он выключен - включаем его, поскольку он требуется для работы jUpgrade.
  7. Идем в меню Компоненты и выбираем jUpgrade. Кликаем на кнопку Параметры в правом верхнем углу. Настраиваем как на скриншоте:

jUpgrade-01

Заполняем поля 'Target Directory', Prefix for old database и Prefix for new database в соответствии с нашими параметрами. Disable Error Reporting - оставляем 'Нет', чтобы получать информативные сообщения при неудачных попытках, а они, как станет ясно далее, будут иметь место. Выбираем пропустить загрузку и распаковку, поскольку мы уже сами подготовили фолдер нового сайта и установили в нем Джумлу 2.5. Шаблоны и сторонние расширения не переносим по соображениям, высказанным выше. Переносим только данные, для чего отвечаем 'Нет' на предложения пропустить миграцию для всех пунктов раздела Core skips. Delete previous migration - категорическое 'Нет', иначе jUpgrade затрет наш фолдер site2_5.

  1. Жмем Сохранить.

Прежде чем кликать Начать обновление, научимся бороться с двумя багами данной версии jUpgrade.

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

jUpgrade-02

Ради интереса один раз довел процесс до конца. Выяснилось, что jUpgrade нашла и скачала далеко не последнюю версию, что-то вроде 2.5.3, и заменила ею уже установленную мной 2.5.9. При этом, подчеркиваю, самодеятельность она проявляет только при первом запуске после установки. Поэтому жмем кнопку Назад и повторно кликаем Начать обновление. Вот теперь загрузка и распаковка действительно пропускаются:

jUpgrade-03

Зато выявляется новая напасть. Этап Процесс обновления выдает результат '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, спасибо!

Поэтому после настройки параметров выполняем два следующих шага:

  1. Редактируем файл install_config.php как описано выше.
  2. Запускаем Начать обновление и сразу нажимаем кнопку Назад.

Вот теперь норовистая jUpgrade укрощена, и можно ожидать от нее корректного выполнения задачи.

  1. Повторно запускаем Начать обновление. На этот раз процесс должен пройти гладко и завершиться выдачей сообщения 'Joomla 2.5 Upgrade Finished!':

jUpgrade-04

Таким образом мы перенесли из старой базы в новую информацию о пользователях и контактах, структуры меню, категорий и материалов, а также баннеры, веб-линки и RSS-ленты. В дополнение, jUpgrade скопировала фолдер images, переименовав оригинальный в images.orig. Папку media при этом не обновила несмотря на сообщение 'Coping images/media files'. Видимо, имелось в виду, что media-файлы также хранятся в фолдере images. Поэтому, если у вас имеются нужные файлы в других папках - самое время их скопировать на новый сайт.

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

Итак, новый сайт получил привычный контент. Можно переходить к установке расширений и переносу их настроек и данных. Об этом - в продолжении.

Комментарии  

ivermectina
0 # ivermectina 17.01.2023 05:01
This design is incredible! You certainly know how to keep a reader amused.
Between your wit and your videos, I was almost moved to start
my own blog (well, almost...HaHa!) Wonderful job.

I really loved what you had to say, and more than that, how you presented it.
Too cool!
Ответить | Ответить с цитатой | Цитировать
pharmacy online
0 # pharmacy online 17.01.2023 14:17
Your mode of telling everything in this article is actually nice,
all be capable of effortlessly be aware of it, Thanks a lot.
Ответить | Ответить с цитатой | Цитировать
stromectol purchase
0 # stromectol purchase 18.01.2023 02:48
Because the admin of this website is working, no uncertainty very soon it will
be well-known, due to its feature contents.
Ответить | Ответить с цитатой | Цитировать
agen slot777
0 # agen slot777 19.01.2023 23:29
We are a group of volunteers and starting a new scheme in our community.
Your website offered us with valuable information to work on. You have done a formidable
job and our whole community will be thankful to you.
Ответить | Ответить с цитатой | Цитировать
classifieds.lt
0 # classifieds.lt 20.01.2023 00:21
Ihan naurettavaa etsintää siellä. Mitä tapahtui sen jälkeen? Pitää huolta!
Ответить | Ответить с цитатой | Цитировать
pharmeasy
0 # pharmeasy 20.01.2023 13:50
Hello there! This post couldn't be written any better!

Reading through this post reminds me of my old room
mate! He always kept chatting about this. I will forward
this post to him. Fairly certain he will have a good read.
Thank you for sharing!
Ответить | Ответить с цитатой | Цитировать
ads508
0 # ads508 21.01.2023 07:21
Hello, I want to subscribe for this weblog to obtain latest updates, so where can i do it please assist.
Ответить | Ответить с цитатой | Цитировать
pharmacy online
0 # pharmacy online 21.01.2023 17:41
Hi there would you mind sharing which blog platform you're using?

I'm going to start my own blog soon but I'm having a tough time choosing
between BlogEngine/Wordpress/B2evolution and Drupal. The reason I ask is because your design seems different
then most blogs and I'm looking for something unique.
P.S Apologies for getting off-topic but I had to ask!
Ответить | Ответить с цитатой | Цитировать
CalendáRio Escolar
0 # CalendáRio Escolar 21.01.2023 18:17
Hello this is kinda of off topic but I was wanting to know
if blogs use WYSIWYG editors or if you have to manually code with HTML.
I'm starting a blog soon but have no coding experience so
I wanted to get advice from someone with experience. Any help would
be enormously appreciated!

my web-site: CalendáRio Escolar
Ответить | Ответить с цитатой | Цитировать
Fungram
0 # Fungram 23.01.2023 01:02
Hi there this is somewhat of off topic but I was wanting to know if blogs use WYSIWYG editors or if you have
to manually code with HTML. I'm starting a blog soon but have
no coding skills so I wanted to get advice from someone with experience.
Any help would be enormously appreciated!
Ответить | Ответить с цитатой | Цитировать
hajar777
0 # hajar777 23.01.2023 08:33
Hmm is anyone else having problems with the pictures on this blog
loading? I'm trying to figure out if its a problem on my end or
if it's the blog. Any feedback would be greatly appreciated.
Ответить | Ответить с цитатой | Цитировать
crazyfetishworld
0 # crazyfetishworld 23.01.2023 17:26
Some fetishes are normal, some are lighting. But hey, you don’t
really prefer persons you don’t really realize discover that you possess a element for hairy armpits, right?
These are just the items that would certainly not seriously
benefit us if we permit various other men and women recognize
about it. Having certain intimate fetishes would help to make us seem bad, and that might
influence our existence overall. Think of your fellow workers looking at you like you have been some deranged maniac merely because they understand you like dressing up way up as
unusual fictional heroes from your favorite present when you masturbate?

But there are usually furthermore fetishes that aren’t that hefty for a person to become viewed as as downright odd.
Some people like feet, also if they’re also filthy and they appear odd
to everyone else. There are in addition folks who find made on with ladies who have facial scalp.

Strange, correct? The very best we could carry out is usually
to know individuals who have diverse erotic fetishes than us, and help to make sure
that we don’t judge and look upon them down. That will be unless they’re carrying out items that
would harm us without our consent.
Ответить | Ответить с цитатой | Цитировать
sarang777
0 # sarang777 24.01.2023 07:33
I'm gone to say to my little brother, that he should also
pay a visit this webpage on regular basis to obtain updated from latest news update.
Ответить | Ответить с цитатой | Цитировать
ads508
0 # ads508 25.01.2023 01:51
Whats up are using Wordpress for your blog platform?
I'm new to the blog world but I'm trying to get started and create
my own. Do you require any coding expertise to make your own blog?

Any help would be really appreciated!
Ответить | Ответить с цитатой | Цитировать
fafaslot
0 # fafaslot 25.01.2023 06:05
Hello every one, here every person is sharing such knowledge, thus
it's nice to read this blog, and I used to visit this
webpage all the time.
Ответить | Ответить с цитатой | Цитировать
online pharmacies
0 # online pharmacies 25.01.2023 21:39
Hello my loved one! I want to say that this article is awesome, great written and come with almost all vital
infos. I'd like to see more posts like this .
Ответить | Ответить с цитатой | Цитировать
gates of gatot kaca
0 # gates of gatot kaca 25.01.2023 21:50
Hi there to every single one, it's really a nice for me to pay a visit this web page, it includes
important Information.
Ответить | Ответить с цитатой | Цитировать
lol kleurplaat baby
0 # lol kleurplaat baby 26.01.2023 04:01
You really make it seem really easy together with your presentation but I to find
this matter to be really something which I feel I would never understand.
It kind of feels too complex and very wide for me. I'm having a
look ahead to your next submit, I will attempt to get the
hang of it!

Also visit my webpage - lol kleurplaat baby
Ответить | Ответить с цитатой | Цитировать

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


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