ブログBLOG

WordPressのPHP8への対応状況。古いプラグインを使っている場合には要注意

2021年の11月にPHP8.1がリリースされました。
PHP8がリリースされたのは2020年の11月のことなので、WordPressで運用しているサイトも、そろそろPHP8への移行を考えても良い頃になります。しかも現在多く使われているPHP7.4は、2022年11月28日でサポートが終了してしまう予定となっているので、余計にPHP8を検証する必要が。。。

・Supported Versions(PHP 公式サイト)
https://www.php.net/supported-versions.php

共用サーバーのエックスサーバーもPHP 8.1に対応したということなので、試しにWordPress 6.0.1(2022年7月現在最新バージョン)で運用しているサイトのPHPを7.4.28 から PHP 8.1にアップグレードしてみました。

このサイトで重大なエラーが発生しました

このサイトで重大なエラーが発生しました

PHP 8.1.6にバージョンアップしたところ、早速現れました。。。
WordPressのエラー画面です。以前は、画面が真っ白で何も表示されない、といった画面だったのですが、WordPress 5.〇 以降にエラーがあった際にはこちらの画面が表示されるようになりました。

このサイトで重大なエラーが発生しました」という画面が表示された時には、以下の原因が考えられます。

・WordPressのアップデートによるもの
・プラグインのアップデートによるもの
・Theme(テーマ)のアップデートによるもの
・PHPのアップデートによるもの

今回は、PHPのバージョンを7.4.28から8.1.6にアップグレードした際に発生したので、明らかに「PHPのアップデート」が原因になります。対処法としては、PHPを元のバージョンに戻すか、不具合を修正または回避するかのどれかになります。

エラー画面が表示された場合の対処法

フロント側だけでエラーが発生した場合には、管理画面にログイン出来るのですが、管理画面側でエラーが発生してしまうと、ログインも出来なくなってしまいます。セキュリティの関係で、WordPressやプラグインのアップデートは必須なのですが、このようなエラーが厄介ですよね。。。

>> WordPressは危険?セキュリティ対策の重要性

エラーの原因を探る方法としては、php.iniの設定で「display_errors」を「ON」にしてエラー内容を表示するか、wp-config.phpに「define( ‘WP_DEBUG’, true );」と記述することで「wp-content」ディレクトリにログが出力されるようになります。

または、FTPやファイルマネージャーなどでサーバーにアクセスし、「wp-content」ディレクトリ内の「plugins」ディレクトリの名称を適当に変更することで、プラグインが無効化されてWordPressが実行されるようになります。

これにより、プラグインが原因の場合には、エラーにならずに管理画面にログイン出来るようになりますので、プラグインを一つ一つ有効化して、エラーが発生している原因のプラグインを見つけましょう。

PHP 8.1に対応していないプラグイン

WordPress 6.0.1の本体は、完全にはPHP 8.1には対応していないようですが、プラグインをインストールしていない状態で検証したところ、特にエラーは表示されませんでした。デフォルトのTheme(Twenty Twenty-Two)も問題なく表示されるようです。

つまりPHPのバージョンを8.1にアップグレードしてエラーが表示されてしまう場合には、プラグインが対応していないか、カスタマイズしているThemeで、PHP8.1に対応していない記述をしているかのどちらかになります。

今回、たまたま検証した中で、PHP 8.1に対応していないプラグインは以下のようなものがありました。(2022年7月時点)※他にも対応していないプラグインは多数あると思います。

My Link Order(4.3) ※古いので代替プラグイン推奨
リンクの並び順を変えられるプラグイン

Similar Posts(3.1.6)
関連記事を表示するプラグイン

WP Social Bookmarking Light(2.0.7) ※古いので代替プラグイン推奨
記事内にソーシャルリンクを表示するプラグイン

まとめ

PHP のメジャーアップデートは互換性のない変更が伴うので、怖いですよね。PHP 7.4のサポート期限も短くなってきていることですし、WordPress本体やプラグインも、早くPHP 8への正式な対応をして欲しいものですね。

関連記事

CONTACTお問い合わせ

システム開発やWEBサイト制作についてのご相談、お見積のご依頼などは、下記の窓口にて承ります。
まずはお気軽にお問い合わせください。お問い合わせはEメール・お電話にて承ります。