2021年8月に正式リリースされた、Joomla! のメジャーアップデート版となる v4.0 は、これまでとは全く外観が異なる管理コントロールパネルを持ち、構成が変わりました。当然ながら新たな機能が追加されています。

Joomla! 3 をご利用中の方であれば、Joomla! 4 への移行にはとても関心があることでしょう。しかし、マイナーアップデートのような感覚で Joomla! 4 にすぐにアップデートをするのはかなり危険です。最悪はサイトが崩壊してしまうかもしれません。

なぜ Joomla! 4 にすぐにアップグレードしてはいけないのか?

もし100%、Joomla! の標準機能だけでウェブサイトを運営しているのであれば、Joomla! 4 へのアップグレードを恐れる必要はありません。すぐにでもサブディレクトリ等にバックアップデータからクローンサイトを構築し、テストしてみると良いでしょう。

しかし多くのウェブサイトは外部デベロッパーが開発したエクステンションを少なからず利用しているはずです。この場合、そのエクステンションの Joomla! 4 対応がカギとなります。

つまり、利用している全てのエクステンションが Joomla! 4対応になっていることが必要なのです。

Joomla! 3.x から Joomla! 4 へのアップグレード方法

Joomla! 4へのアップグレードは、Joomla! 3.x の最新版でサイトが稼働できている、ということが大前提となります。

アップグレード前の準備

これから説明する作業は、すべてクローンサイト(複製サイト)上で行います。つまりバックアップデータを作成し、そこから別ディレクトリにリストアする必要があります。

クローンサイト上でテストを行い、行った作業を細かく記録していくことをお勧めいたします。
また一発でアップグレードは成功しないもの、という心構えで、要所要所でクローンサイト上でもバックアップを取り、リストアからテストを再開できるようにしておく、という事も気に留めてください。

コンポーネント「Joomlaの更新」

管理コントロールパネル内「コンポーネント」メニュー配下にある「Joomlaの更新」にアクセスします。
画面左上にある「オプション」をクリックして表示される「Joomlaの更新:オプション」ページにおいて、「チャンネルの更新」設定を「Joomla Next」に変更し、保存して閉じます。

すると、「Joomlaの更新」ページの内容が切り替わり、「更新前チェック」タブが出現します。

ここでまず大事なのが「潜在的なアップグレードの問題があります」と表示されているエクステンションをチェックすることです。

それらエクステンションについては、個々に Joomla! 4 対応バージョンが出ているのかを各デベロッパー・サイトで確認し、対応バージョンがあればダウンロードしておきます。

この作業で問題となるのが、エクステンションによって以下の可能性があることです。

  1. Joomla! 4 対応版がなく、今後も開発される見込みがない
  2. Joomla! 4 対応版が Joomla! 3対応版とは別に用意されている
  3. 最新版が Joomla! 3 と Joomla! 4 の双方に対応している

アップグレードという視点で一番楽なのは、上記3です。

上記1の場合:
残念ながらそのエクステンションの利用継続を諦める必要があり、別エクステンションを探す、という必要性が発生します(またはサイト仕様の変更を検討します)。

上記2の場合:
プログラムソースという観点では理想的なのですが、アップグレードを行う視点においては少し注意を払う必要性があります(手順を考える必要があります)。

エクステンションの事前処理

上記1の場合 これに該当するエクステンションについては、アンインストール1択です。
上記2の場合 これに該当するエクステンションについては、管理コントロールパネル内「エクステンション」メニュー配下の「管理」から、さらにその配下の「管理」にアクセスして、該当エクステンションを検索し「非公開」設定にします。これにより、プログラムソースとしては存在するものの、Joomla 上では機能しなくなります。
上記3の場合 この場合は、単純に最新版にすれば良いはずです。

「Joomlaの更新」を再チェック

エクステンションの事前処理が完了したら、再度「Joomlaの更新」にアクセスして表示を確認します。 事前処理が正しく完了しているならば、「潜在的なアップグレードの問題があります」表示はなくなっているはずです。

但し、「アップデートしてください」セクションで「Joomlaを更新する前に、これらのエクステンションを更新してください。」と表示されている場合は、上記2と同様な処理を行うか、または、一旦アンインストールしてから最新版を再インストールするか、のどちらが適切かを考え対応することになります。

表記を信じて更新をしてもうまくいかないケースが出てくるかもしれません。

ライブアップデート

「Joomlaの更新」ページで、「更新情報は利用できません」セクションにエクステンションの表示があると気になるかもしれませんが、「潜在的なアップグレードの問題があります」表示がなくなればOKです、気にする必要はありません。

「ライブアップデート」タブをクリックすると、おそらく最初は「警告:Joomlaの更新を妨害し、更新に失敗してサイトにアクセスできなくなる可能性のあるプラグインがインストールされ、有効になっています。」と表示される場合がほとんどでしょう。

このメッセージは無視してはいけません。
またこのメッセージが表示されていないとしても、直ちにアップグレードを開始するのは危険です。

システムプラグイン

アップグレードが失敗する理由のほとんどは、システムプラグインにあると言って良いでしょう。 残念ながら、「Joomlaの更新」は万能ではなく、あくまで指標として扱う方がベターです。システムプラグインについては「Joomlaの更新」によるチェックが万全ではないからです。

では、システムプラグインのチェックです。
管理コントロールパネル内「エクステンション」メニュー配下の「管理」から、さらにその配下の「管理」にアクセスします。次に、上部の「検索ツール」ボタンをクリックします。

表示されたプルダウンメニューの「種類の選択」から「プラグイン」を選択します。続いて「フォルダの選択」から「system」を選択します。

これにより現在インストールされているシステムプラグインが一覧できます。

プルダウン「状態の選択」から「有効」を選択します。
これにより、現在機能しているプラグインだけに絞り込むことができます。

以上により表示されたリストをじっくりと確認していきます。Joomla コアシステムに付随するものは確認対象から外して構いませんが、外部エクステンションに関連するものはしっかりと確認する必要があります。

Joomla! 3 のみでしか動かないと思われるシステムプラグインは、「アンインストール」するか「無効」にするかの事前処理が必要です。これが正しく行われないと、Joomla! 4 へのアップグレードは完全に失敗します!

アップグレード本番

では、再度「Joomlaの更新」ページにアクセスし、「ライブアップデート」タブをクリックしてみましょう。警告表示が無くなっていることが確認できましたら、「更新のインストール」ボタンをクリック、ではありません!

ここまでの苦労が水の泡とならないよう、バックアップが先です!

バックアップを行い、最悪の自体に備えたら、いざ「更新のインストール」ボタンをクリック、です。

アップグレードに成功したら?

アップグレードに失敗すると、管理コントロールパネルのメニューが羅列されるだけで何をクリックしても反応しない、というページが表示されます。またはフロントエンドでエラー表示がされます。
この場合は、ジタバタしても仕方ありません。バックアップデータからリストアし、再度チェックを続けます。

晴れてアップグレードに成功したら、終わり・・・ではありません。
エクステンションの事前処理で「アンインストール」または「非公開」としたエクステンションを復活させなくてはなりません。個々のエクステンションによって対応を変える必要があったりしますので、落ち着いてじっくりと最善の手を打っていきましょう。

リニューアルを選択肢に入れる

以上、Joomla!3 から Joomla! 4 へのアップグレード方法についての解説でした。
実際のところ、各ウェブサイトによって、インストールされているエクステンションは一律ではないため、全てのケースでこの情報が適応できるかは分かりません。しかし、抑えるべきポイントは含まれているはずです。

Joomla! を毎日扱っているプロの意見として、正直なところ、今回の Joomla! 4 へのアップグレードは、かなり難易度が高めです。
Joomla! について深く理解していないとアップグレードは成功しにくい可能性があります。

アップグレードという考え方の他に、これを機にホームページをリニューアルする、という考え方も必要かもしれません。
かくいう当サイトも、Joomla! 3 でインストールしていた外部エクステンションのいくつかが Joomla! 4 に対応できていない現状を鑑みて、リニューアルを選択しました。

Joomla! 3 のまま使い続ける選択肢はあるか?

これは残念ながらありません。
コンピュータやインターネット、アプリケーションの世界はずっと進化を続けていくものであり、現状維持を選択すれば、いずれセキュリティー上の問題に直面します

Joomla! 3 は 2023年8月17日を最後に公式サポートを終了する旨が発表されており、また同時に(2022年6月時点で)Joomla! 4.2 のリリースが2022年8月予定であることが公式サイトで発表されています。バージョン 4.2 がリリースされた後も、さらに進化を続けていく事でしょう・・。

Joomla! Project Roadmap