PHP 8への移行でエラー(My Category OrderとMy Page Orderが原因だった)

PHP 7.3のサポートも終了してしまいましたし、そろそろPHP 8.0に移行することにしました。PHP 8.0ではSearch Regex 2.4.1は動かないことがわかっているので、このプラグインは予め無効化しておきます。もし必要になったら、同様の他のプラグインがないか探してみることとします(今は使っていないのですので)。

PHPのバージョンの切り換えは、エックスサーバーなら管理画面にログインしてリストから選択するだけ。

あっという間にバージョン切替えができてこれで完了、と思ったのですけど、そんなに甘くなかった。WordPressをアクセスしたらエラーを吐いてしまい、サイトを開けません。

エラーメッセージがズラーッと表示され、「このサイトで重大なエラーが発生しました」とあります。「対応手順については、サイト管理者のメール受信ボックスを確認してください」と書かれていますが、メールは来ていません。おそらく、メールが送れないほどに重大なエラーなんでしょう。

でも、エラーの発生はPHPのバージョン変更に伴うことと明らかですから、一次対応は簡単です。エックスサーバーの管理画面でPHPのバージョンをもとに戻せば大丈夫。実際、そうやると何事もなく表示されました。

本当の問題はここから。何が原因でPHP 8.0にするとエラーになるのか、です。

先程のエラーメッセージをじーーーーーーーっと見てみると「mycategoryorder」という文字列があることに気づきました。この名前のプラグインに覚えがあります。相当昔に入れたはず。

ありました。このMy Category Orderと、兄弟プラグインとも言えるMy Page Orderの二つを外したところ、PHP 8.0でエラーは出ず、ちゃんと動きました。

この二つ、昔はかなり有名なプラグインだったんですが、今は既に公式プラグインには入っていないようです。メンテナスされていない古いプラグインを使い続けるのはセキュリティの面からもリスクですので、整理できてよかったです。

この記事のタイトルとURLをコピーする

スポンサードリンク

WordPressPHP

Posted by サイノア