PHPの互換性を簡単に確認できるプラグインの紹介

プラグイン

今回は、WordPressで使用中のテーマ・プラグインとPHPの互換性をチェックするプラグイン、「PHP Compatibility Checker」の紹介と使い方を解説したい。

スポンサーリンク

PHPの互換性を確認する理由

さて、なぜPHPの互換性を確認する必要があるのだろうか?おそらく、漠然とだが「やっておくべきだ」という話を耳にしたことがあるだろう。

その理由は、PHPは新しくなるごとに、様々な新しい関数であったり、文章の構造や表記法などを取り入れていくからだ。それにより、サーバーで行われる処理はより効率化し、WEBサイトの表示速度がアップする。

しかしながら、新しいものが取り入れられていくということは、形骸化した古いものが切り捨てられたり、非推奨になるということでもある。

このため、古いバージョンで正常に働いていても、新しいバージョンでは誤作動を起こすものが出てくる。

このため、PHPをバージョンアップするときは、新しいバージョンでちゃんと動いてくれるかどうか、互換性を確認する必要があるのだ。


しかし、残念ながらWordPress自体には、PHPの互換性をチェックする機能は存在していない

「PHP Compatibility Checker」で互換性を確認しよう

さて、それではWordPressで使っているテーマやプラグインが、最新のPHPに対応しているかどうかを調べるにはどうしたらよいのだろうか?

そんな心配も無用、WordPressには「PHPの互換性を確認してくれる」プラグインもあるのだ。

それが、今回説明する「PHP Compatibility Checker」プラグインだ。

それでは早速、このプラグインを使用してPHPの互換性の確認作業を始めよう。

導入の手順

まずは、管理者画面の左側に存在しているサイドバーの「プラグイン」にカーソルを合わせ、メニューが表示されたら「新規追加」をクリックしよう。

そして、「プラグインの追加」ページが表示されたら、右側の検索ボックスに「PHP Compatibility Checker」とコピペで入力しよう。そうしたら、検索結果の中に体の横にPHPのロゴが描いてあるゾウ(正式名称:ElePHPant)がアイコンになっているプラグインが存在しているはずだ。

これが、今回の作業で必要になる「PHP Compatibility Checker」プラグインだ。「今すぐインストール」を押してWordPressに導入したら、青い「有効化」ボタンを押そう。

これで、インストールは完了だ。

スポンサーリンク

使い方

さて、件のプラグインをインストール・有効化したら、次は管理者画面のサイドバーに存在する「ツール」にマウスカーソルを合わせ、メニューの中にある「PHP Compatibility」をクリックしよう。

そうしたら、このようなページが開かれる。ここで、互換性を確認したいPHPの各バージョンや、プラグイン・テーマを確認する範囲を選択することができる。

なお、2020年10月現在、「PHP 7.4」のラジオボックスが存在しない
なので、今回は「PHP 7.3」の互換性を確認する。

それでは、「スキャンオプション」から、それぞれのオプションを設定しよう。
まずは「PHP のバージョン」だ。ここは「PHP 7.3」のラジオボタンをクリックしよう。
そして、「プラグイン/テーマの状態」は、「すべてのプラグインとテーマ」を選択しよう。

さて、上記の画像のように選択しているだろうか?しているのであれば、「サイトをスキャン」ボタンをクリックしよう。

気長に待とう。

そうすると、ボタンの右横に「Now scanning: XXXX (YY of ZZ)」なるものが出現する。これは、現在スキャン中のアイテムと、そのスキャン中のアイテムは何番目で、あといくつのアイテムが残っているかを表示するものだ。

「サイトをスキャン」ボタンは「サイトを再スキャン」ボタンに切り替わるが、現在のスキャンが終わるまで再スキャンは行わないようにしよう


テーマやプラグインの数が多ければ多いほど時間がかかる。目安として、スキャンするアイテム数が10個以上あるならば30分以上はかかる。なので、気長に待とう。

さて、全てのアイテムのスキャンが終わると、「サイトを再スキャン」ボタンのすぐ下のほうに、「PHP 7.3 互換性のスキャン結果」がずらりと表示される。

普通、最新のテーマやプラグインを使用しているのであれば、このように「互換性あり」と書かれた赤いスタンプが表示される。

なお、今回のスキャンでは、互換性がないプラグインは発見できなかった。

また、各テーマ/プラグインの結果欄の右側に存在する「詳細切り替え」を押すことで、このようにスキャン内容の詳細が表示される。

互換性がある場合は、「PHP 7.3 互換性があります。」と表示される。
しかし、互換性を確認できてもこのプラグイン/テーマはスキャンするには大きすぎるため、サーバーのプロセスを強制終了する前にスキップしました。」と表示される場合もある。この現象は、もともとの容量が大きい親テーマや、Wordfenceなどの容量が大きなプラグインで起きてしまう。ただし、互換性はちゃんと確認されているので、気にする必要は無い。

また、「結果をテキストで表示」にチェックを入れると、スキャン結果が全てテキストで表示される。

が、見ての通りわかりづらいので、テキストで表示する理由は薄いと思っている。

また、「レポートをダウンロード」ボタンを押すことで、先ほどのスキャン結果のテキストを入手することができる。

Windowsの「メモ帳」などで確認してみよう。

ちなみに、互換性のスキャン結果の下のほうにある文章とリンク。

注: すべてのエラーメッセージが、選択した PHP のバージョンでは動作しないことを意味するものではありません。このサイトを PHP 7 でテストし、動作確認してみましょう。

これは、「WP Engine」社のサーバー契約のページに飛ぶアフィリエイトリンクなので、クリックする必要は無い

最後に、「レポートをダウンロード」ボタンのすぐ横に存在する「結果をクリア」をクリックして、元の画面に戻しておこう

これで、互換性のチェックの説明を終える

互換性のチェックが全て済んだので、安心して「PHP 7.3」へのアップデートを行うことができる。

備考:「PHP 7.4」の互換性の確認について

さて、先ほども少し触れたが、2020年10月現在、「PHP Compatibility Checker」の互換性チェックは「PHP 7.3」で止まっている
なので、「スキャンオプション」の中の「PHP のバージョン」のチェック欄(ラジオボックス)には、「PHP 7.4」が存在していない

この問題については、何ヶ月も前からWordPress公式サイトの「プラグインのサポート」に関するトピックスで、開発者へ「PHP 7.4」の互換性をチェックするアップデートを求める声が上がっているのが現状だ(トピックその1トピックその2)。しかし、開発状況は難航しているようで(開発状況その1開発状況その2開発状況その3)、未だに続報が無い。

なお、トピックの中にはGitHubに存在する「互換性チェックプラグイン」のリンクを紹介している人もいるが、そちらのプラグインもアップデートは2年以上前に止まっているものなので、正直使わない方が良いだろう。

私は、使用中のテーマ/プラグインが全て「PHP 7.3」に対応しているとの結果が出たので、自己責任で「PHP 7.4」にアップデートしたが、もし不安があるのなら控えるのも手だ。なぜなら、「PHP 7.3」のサポートは、まだ1年残っているからだ。

しかし、PHP 7.2」のサポートは「2020年11月30日」に終了する

なので、とりあえずPHP 7.3」には必ずアップデートしておこう

終わりに

今回は、「PHP Compatibility Checker」というプラグインを使って、現在WordPressで使用中のテーマやプラグインと、新しいバージョンのPHPとの互換性を確認する方法を紹介した。

このプラグインはとても便利だが、残念ながら未だに「PHP 7.4」に対応していない。

私は、自己責任を承知して、「PHP 7.~系統で問題が起きていないのなら大丈夫だろう」ということで、「PHP 7.4」にバージョンアップを行った。

ただし、2020年の10月頃からテストが行われている「PHP 8.0.0」の導入はまだ控えるべきだ。WordPressの公式が出している要請では「PHP 7.4」となっている。また、多くのプラグインも未対応だろう。

しかし、「PHP Compatibility Checker」の開発がこのまま止まったままなら、「PHP 8.0」へバージョンアップを行う際は、別のやり方で互換性を確認する必要が出てくる。

なにはともあれ、PHP 7.2」のサポートは2020年の11月30日で切れるので、まだバージョンアップしていない人は早めに「PHP 7.3」に上げてしまおう

それでは、また。