PHPのバージョンアップはどうしたらいい?自分でしても大丈夫?

ごくまれに、WordPressを設定してあるサーバーから、「PHPのバージョンアップをしてください」という表示や通知に遭遇することがあります。
急ぎませんが、いずれはPHPのバージョンアップが必要になります。
ただし、PHPは心臓部分そのものなので、仕組みがよくわからないままアップデートすると、動かなくなったり、ページが表示されなくなってしまう場合があります。
自分でWordpressやPHPを使った仕組みを作っていない場合は、制作者に依頼してアップデートしてもらいましょう。
自分でバージョンアップする際は、WordPressのバージョンアップよりも慎重に対応する必要があります。
PHPとは?

PHPとは、サーバーサイド(サーバー側)で動くプログラミング言語で、Web開発でよく使われる言語の一つです。
WordPressにもPHPが使われています。
WordPressにバージョンアップが発生するように、PHPもバージョンアップが発生します。
PHPのサポート期間は3年です。
リリース後2年間は、セキュリティの問題やバグの修正などのフルサポートが行われます。
その後1年間は、セキュリティ上の重要な問題が発生した場合のみの対応(セキュリティサポート)がなされます。
リリースから3年を過ぎたバージョンは使用することはできます。
だだし、あまりにバージョンが離れてしまうとWordPressが対応していなかったり、セキュリティリスクも上がります。
PHPのバージョンアップのメリット・デメリット

PHPのバージョンアップは、WordPressのバージョンアップよりも慎重を要します。
まずは、バージョンアップのメリット、デメリットをしっかり理解&確認しておくことが大切です。
メリット

Webサイトの安全性がアップする
最新のセキュリティ対策がなされるので、それに伴ってWebサイトの安全性がアップします。
新しい機能やプラグインが利用できるようになる
最新の機能が実装されるので、新しい機能やプラグインを利用することができるようになります。
Webサイトの表示や動作が速くなる
PHPのプログラムを処理するスピードが速くなるので、Webサイトの表示が速くなります。
PHP7系は、PHP5系の2~3倍処理速度が速くなっており、PHP8系は、PHP7系よりさらに少し速くなっているようです。
それに伴ってSEOで順位が上がりやすくなったり、見る人のストレスを減らすことができます。
デメリット

Webサイトが正しく表示されない・動かなくなる
今まで使っていたWordPressのプラグインやテーマが非対応の場合があります。
この場合、Webサイトの一部が正しく表示されなかったり、エラーが表示や、最悪の場合はサイト全体が動かない(表示されない)場合があります。
サイト全体が表示されなくなった場合、管理画面にアクセスできなくなることもあります。
廃止された関数の修正が必要になる
バージョンアップにより、今まで使えていた関数が廃止されてしまうと、エラーが表示されるようになります。
WordPressの場合、関数はテーマやプラグインで使用されているので、これらの廃止された関数を、別の関数に置き換える必要があります。
この作業は一つ一つ行う調査した上で置き換える必要があるので、多くの労力が必要になります。
PHPのバージョンアップは必要?

WordPressとPHPは相互に関係性があり、使用しているWordPressのバージョンに対応したPHPを使用する必要があります。
PHPのバージョンアップが必要な場合は、下記の通りです。
- 新規でWordPressをインストールする際、PHPのバージョンが古くてインストールできない
- WordPressを最新バージョンにアップする際、PHPのバージョンが古くてアップデートできない
上記の場合に、対応が必要です。
状況別、PHPバージョンアップ対応方法

PHPのバージョンアップは、サーバーに何を設置しているかにより状況が異なります。
サーバーに何も設置していない場合
契約直後など、何も設置していない(WordPressすらインストールしていない)場合は、そのままPHPをバージョンアップしてOKです。
新規でインストールするWordPress以外に、何もサーバーに設置していない場合
サーバーに何も設置していなければ、そのままPHPのバージョンアップをしてOKです。
サーバーに何か設置している場合
サーバーに何か設置している場合は、何を設置しているか確認する必要があります。
WordPress以外にPHPを使ったプログラムが設置してあったり、何があるかわからない場合は、制作者に連絡してバージョンアップを依頼した方が安全です。
自分で設置している場合は、確認後、必要ならばバックアップ&テスト環境で動作確認した上でバージョンアップしてください。
すでにWordpressを設置している場合
すでにWordpressを設置している場合は、自分でできなくもありませんが、少し慎重を要します。
誰かにWebサイトを制作してもらった場合は、制作者に連絡してPHPのバージョンアップを依頼する方が安全です。
また、自分でWordPressを設置した場合は、テスト環境で試してから本番サーバーのPHPをバージョンアップを行ってください。
PHPのバージョンアップ方法

ここでは、
- WordPress設置済み
- WordPress以外のPHPなどのプログラムなし
の環境でのPHPバージョンアップ方法をご紹介します。
以前クライアントのPHPのバージョンアップでしたときの備忘録です。
なおサーバーでの作業は、万一のエラーに対応するため(画面が真っ白になるなど)、深夜や早朝などの時間に作業することをおすすめします。
1)WordPressとPHPのバージョンを確認する
現在のWordPressとPHPのバージョンと、アップデート後のWordPressとPHPのバージョンをチェックします。
バージョンアップ後のWordPressとPHPが対応しているかどうか、一覧またはWordPress公式サイトで確認してください。
PHP の互換性と WordPress のバージョン
対応していれば、バージョンアップ可能です。
2)【サーバー】WordPressのバックアップを取る
WordPressのバックアップを取ります。
このバックアップデータは、ローカルテスト用&万一のバックアップ用です。
バックアップを取ったとしても、そのままバージョンアップするのは危険なので、まずはローカルでテストを行います。
ローカルで環境を再現できる方法でバックアップを取ってください。
(プラグイン「All-in-One WP Migration and Backup」などでのバックアップがおすすめです)
3)【ローカル】ローカルで現在のWebと同じ環境を再現する
PCでLOCALやXAMPPなどを使ってローカル環境を構築し、上記で取ったバックアップデータを元に、Webと同じ環境を再現します。
このとき、PHPのバージョンをサーバーと同じものに合わせておきます。
4)【ローカル】PHPのバージョンを上げて不具合が発生するかどうか確認する
環境の再現ができたら、一度、PHPのバージョンを上げてみます。
このとき、不具合が発生するようなら、元のバージョンに戻します。
5)【ローカル】(不具合が発生した場合)不具合を一つづつ確認していく
PHPのバージョンアップで発生する不具合は、大きく分けて
- プラグインによる不具合
- テーマによる不具合
の2つが原因であることが大半です。
一つつづ原因を確認していきます。
プラグインによる不具合の確認
まずは不具合の原因が、プラグインによるものかどうかを確認します。
- プラグインを全て停止
- 次にPHPのバージョンアップを行う
これを行って、不具合が出るかどうかを確認します。
不具合が発生した場合
何も不具合が出ない場合、テーマが原因であることが疑われます。
不具合が発生しない場合
プラグインを停止すると正常に動く場合は、プラグインが原因であることが疑われます。
ひとつづつプラグインを有効化→停止を行いながら、動作や表示を確認していきます。
特定のプラグインを有効化した際に不具合が発生した場合は、そのプラグインが原因です。
該当プラグインを停止または削除し、代替プラグインで対応するなどしてください。
テーマによる不具合が原因の場合
テーマが原因で不具合が発生する場合、PHPのエラーコードに従って、修正対応してください。
関数の置き換えが必要な場合は、置き換え作業も必要になります。
6)【ローカル】(不具合対応完了・不具合が出ない場合)動作確認をする
不具合の対応が完了、または不具合が出なかった場合は、動作確認を行ってください。
問題がなければ、バージョンアップ後のPHPバージョンで上書き用データ(修正した場合は、修正後のデータ)を書き出します。
7)複数Wordpressがある場合
同じサーバーに複数Wordpressがある場合は、別のWordpressを、もう一度1~6の手順で調査していってください。
全てのWordpressの調査&データの書き出しが完了したら、サーバーの作業に移ります。
7)【サーバー】Webサーバーの管理画面でバージョンアップを行う
上記の書き出したデータを使って、WordPressのデータを上書きします。
(複数ある場合は全て上書き)
その後、ローカル環境と同じPHPのバージョンへバージョンアップを行います。
ローカルで正常に動作していても、Webに反映させると再度不具合が発生することがあります。
その場合は、それぞれ修正対応を行ってください。
8)【サーバー】最終動作確認
最後に動作確認をして、PHPのバージョンアップ完了です。
まとめ
PHPのバージョンアップをこまめにしておくと、セキュリティに強くなり、表示速度が速くなってSEOも有利になります。
急ぎはしませんが、できればこまめにアップデートしておきたいところです。
だたし、PHPのバージョンアップは、慎重を要します。
自分でWordpressやPHPを使った仕組みを作っていない場合は、制作者に依頼してアップデートしてもらいましょう。
自分でバージョンアップする際は、必ずバックアップは取り、できればテスト環境で動作を確認してからバージョンアップすることをおすすめします。
もし、ホームページ運用で気になる点やお悩みがあれば、お気軽のご相談いただければと思います!