WordPressは、動的言語であるPHPで実装されています。PHPには、C/C++、Go言語等に代表される静的な型という概念がありません。動的な言語は、簡単に記載出来る反面、変更する際の影響範囲を把握することが難しいという側面を持っています。今回は、Wordpress自体のPHPをバージョンアップする際にPHPの互換性をチェックするプラグイン「PHP Compatibility Checker」を紹介します。

なぜPHPのバージョンアップが必要なのか?

PHPをバージョンアップする目的は、大きく分けて2つあると思います。

  • Webサイトのパフォーマンス改善
  • Webサイトの安全向上

Webサイトのパフォーマンス改善

PHPのバージョンごとのパフォーマンスは、wpbenchとして公開されています。こちらの記事を見ると、PHPのメジャーバージョンが変わると2-3倍ぐらいの性能向上が見込めるようです。サイトのパフォーマンスチューニングを考える際には、PHPのバージョンのチェックも行ったほうが良いです。

Webサイトの安全性向上

PHPは、記述が簡単であることなどから古くから利用されてきた背景があります。エンジニアでない人でも少し勉強できれば、記述出来る言語であると思います。いろいろな人がメンテナンスやコードをかけるのは、非常に良いことですが、そのことによって、サイト自体に脆弱性を埋め込んでしまうこともよくあります。また、動的な言語でかつ、簡単に記述できるというところを意識する中で、言語仕様として本来、想定しなかったような利用方法や実装のバグなどによって、言語としての脆弱性を含むこともあります。CVEなどで公開されています。例えば、CVE-2019-11043です。このように、古いバージョンのPHPには、脆弱性が含まれているので、サイトの安全性を向上するという観点でも定期的なバージョンアップが必要です。

プラグインを使ってみる

プラグインの導入自体は、非常に簡単です。

  • プラグインを検索
  • プラグインをインストール
  • 実行
プラグインをインストールした直後

スキャンを開始ボタンを押して、PHPのバージョンを選択します。実行が開始されたら、結構時間がかかるので、のんびりコーヒーでも飲みながら待ちましょう。

まとめ

今回は、PHP Compatibility Checkerとうプラグインについて紹介しました。WordpressのPHPのバージョンアップ作業は、実際に動かして見ないと分からないという点もあり、精神的にも不安になることがあると思います。100%でないとしても、事前に問題が可視化されるというのは、ありがたいものです。まだ利用していない方は、定期的なPHPのバージョンアップ作業ワークフローに組み込んで見てはいかかでしょうか。