「PHPの更新が必要です」とWPに出たのでPHP7.3.16に更新したらプラグインがwarningを出してページが壊れた件。


テレワーク中、このブログも休止していたわけですが、本日久しぶりにWordpressの管理画面にログインすると、

「PHPの更新が必要です」という表示に気づきました。

これはWordpressの更新ではなく、借りているXserverのPHPバージョンを上げなさい、という意味ですが、さっそくXserverのサーバーパネルにログインしてみると、現在はPHP7.1.33で、非推奨とのこと。

ドロップダウンをクリックすると、推奨はPHP7.3.16だそうです。

で・・・やってみたわけです。

切替はものの10秒程度。

しかし、このブログは見事にレイアウトというか、warningの記述が100行ぐらい表示されてレイアウトが壊れました。

Warning: preg_replace(): Compilation failed: invalid range ・・・
Warning: preg_replace(): Compilation failed: invalid range ・・・
Warning: preg_replace(): Compilation failed: invalid range ・・・

こんな感じで延々と100行近く画面に出るわけです。

もう1つ、私のブログではなく知人に相乗りさせている別ドメインのブログがあるのですが、そっちはPHP7.3.16にしてもwarningも出ていません。

とりあえず、このブログのほうだけ現状のPHP7.1.33より1つ上、推奨されているPHP7.3.16より1つ下となるPHP7.2.29にしたらエラーは消えました。

しかし、同じWordpressなのに2つのブログの違いは何だったのか?

WordPressのバージョンはどちらも5.4.2–ja 。

外観テーマは2つのブログは異なっていますが、調べていくと私の場合はどうやらプラグインのようでした。

知人のブログの管理ページのアカウントを持っているので、私のブログにあって、知人のブログにはないプラグインを確認してみたところ、いくつかマイナーっぽい(?)プラグインがありました。

推奨されているPHP7.3.16に再度アップしたうえで、1つ1つ怪しい(?)プラグインを無効にしていったら、でCrayon Syntax Highlighterというプラグインに行き当たりました。

いつ、なんのために入れたのかさえ忘れていましたが、複数の言語、テーマ、URL、ローカルファイル、または投稿テキストを強調表示する機能だそうです。

このプラグインを無効化するとwarning表示が出なくなりました。

プラグインのソース自体をいじるスキルはないので、とりあえず「無効化」です。

まあ、必要があって入れたのでしょうから、このプラグインがバージョンアップしたら有効化して状態を確認してみたいと思います。


コメントを残す

メールアドレスが公開されることはありません。

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください