ロリポップレンタルサーバーのライトプランを使用していますが、ライトプランでも2019年10月からCGI版の『PHP7.3』が提供開始されていました。
今回PHP7.3にしたら、トップページのサイドバーが無くなったりWebページの表示不具合が発生してしまいました。 テーマやプラグインに問題があるのか色々調べてみましたが結局『Crayon Syntax Highlighter』プラグインが原因で、PHP7.3対応版に更新したら改善できましたので、この顛末を紹介します。
PHP7.1からPHP7.3に変更するメリット
ロリポップからの引用(概略)
https://lolipop.jp/info/news/6405/
最新のPHPバージョンヘアップデートすることにより、下記のメリットがあります。
PHPの処理速度の向上
PHPはバージョンが上がるごとに改良が加えられており、新しいバージョンほど効率的に動作するようになっています。
そのため、PHP7.3(モジュール版)にアップグレードすると、以前のバージョンに比べてパフォーマンスが向上します。 ※PHP7.3(CGI版)ではWEBサイトの表示速度に変化が出ない可能性があります。
Webサイトのセキュリティの向上
PHPにはサポート期間が存在しており、サポートが終了した古いバージョンにはセキュリティ対策が行われません。
最新からいくつかのサポートされているバージョンは、セキュリティ対策が行われておりますため、PHPのアップデートはWEBサイトの安全性にとって非常に重要です。
『PHP7.3(CGI版)ではWEBサイトの表示速度に変化が出ない可能性がる』とのことでチョット躊躇しましたが、PHPバージョンをアップすることでセキュリティ上も意味があるようなので、当サイトもPHP7.3化することにしました。
PHP7.3の設定変更・手順
step
1安全のためWordpressのバックアップをとります。
step
2テーマやプラグインの互換確認
以下の『PHP Compatibility Checker』プラグインをインストールしてテーマやプラグインにPHP7.3との互換性があるか確認します。
こちらをCHECK
『PHP Compatibility Checker』プラグインをインストールした後、Wordpressのメニューから、
ツール>PHP CompatibilityをクリックしてPHP Compatibility Checkerの設定画面を開いて、以下のように設定して「サイトをスキャン」をクリックします。
約15分で、「PHP 7.3 互換性のスキャン結果」が表示されます。
その結果、プラグインの更新を促す表示や☓印のついたエラー警告の表示が示されます。 当サイトの場合、警告(☓印)のあったプラグインは、「RSS インポートツール」と「All-in-One WP Migration」でしたので、取敢えずそのプラグインを停止させました。 また、プラグインも最新のバージョンに更新しました。
step
3PHP7.3に変更
ロリポップの「ログイン画面から」サーバーの管理・設定>PHP設定>からPHP設定画面に入り対象ドメインのバージョンをPHP7.3に変更しました。 約5〜10分程度で移行が完了します。
step
4当サイトWeb表示・結果→NG
残念ながら、Webページに表示不具合が発生し(トップページのサイドバーが無くなり、ページネーションも無表示etc)当サイトの環境では、PHP7.3に移行できませんでした。
注意ポイント
PHP7.3化は一旦保留することにしました。(元のPHP7.1はロリポップのPHP設定画面から簡単に戻すことができます)
ここからは、PHP7.3への対応方法になります。
PHP7.3におけるWeb表示不具合の原因と改善方法
原因の特定
ネットをググると、PHP7.3移行によるトラブル例が色々出てきます。 この中で、白色おばけさんの「Crayon Syntax HighlighterがPHP7.3で表示されない時の対応方法」が目にとまり、半信半疑で「Crayon Syntax Highlighter」プラグインを停止し、ロリポップサイトから、PHP7.3に再設定したところ、当サイトのWeb表示が正常に表示される様になりました。
この結果から、Web表示不具合の原因は「Crayon Syntax Highlighter」プラグイン(バージョン 2.8.4)で互換性に問題があることが推定できます。
〜〜〜〜
それにしても、『PHP Compatibility Checker』では以下の様に「互換性あり」となっていて、実際とは違った表示になっています。 このことから『PHP Compatibility Checker』プラグインをあまり信用してはいけないことが分かりました。
改善策
白色おばけさんの該記事の中で、『"Crayon Syntax Highlighter"の作者から有志の方が引き継ぎ更新作業を行ってくれた』との記載があり、バージョン 2.8.4から2.8.6にアップしてPHP7.3に対応していることが分かりました。 以下のGitHubサイトでダウンロードできます。
Crayon Syntax Highlighterプラグインの更新作業 手順
ポイント
- 旧バージョン(2.8.4)Crayon Syntax Highlighterプラグインを削除します。
- 上記GitHubサイトで、Source code(zip)をクリックしてダウンロードします。
- WordPress のメニューから、プラグイン>新規追加>「プラグインを追加 プラグインのアップロード」をクリックして、先程ダウンロードしたSource code(zip)を指定
- 新バージョン(2.8.6)Crayon Syntax Highlighterプラグインをインストールし有効にします。
以上の作業で、Web表示不良が解消され「Crayon Syntax Highlighter」プラグインも使える様になり、当サイトのPHP7.3化を行うことができました。
以上の様に、白色おばけさんが投稿された「Crayon Syntax HighlighterがPHP7.3で表示されない時の対応方法」が非常に参考になりましたので、ここでお礼を申し上げます。
PHP7.3のWeb表示速度の確認
PHP7.3に変更して未だ日が浅く、若しかしたら未確認のトラブルがあるかも知れませんが、今の所順調です。
Google「PageSpeed Insights」で表示速度を計測したところ、モバイル:31、PC:78で以前のPHP7.1とあまり変わらない結果でしたが、体感上は間違いなく早くなった気がしています。 また、Wordpressの投稿編集のレスポンスがアップしている様にも感じられました。
以上、ロリポップCGI版のPHP7.3への移行顛末でした。