WordPressでPHPバージョンアップ時に「Warning: preg_replace(): Compilation failed: invalid range in character class」
今回はWordPressでPHPバージョンアップ時に下記のようなエラーが起きたときの対処法についてご紹介していこうと思います。
1 2 3 |
highlighter/crayon_langs.class.php on line 340 Warning: preg_replace(): Compilation failed: invalid range in character class at offset 4 in /home/test.com/public_html/wp-content/plugins/crayon-syntax-highlighter/crayon_langs.class.php on line 340 |
私はWordPressのPHPのバージョンを8.1.22に上げたときに次のようにサイトを開いたときにエラー表示されるようになってしまいました。
WordPressでPHPバージョンアップ時に「Warning: preg_replace(): Compilation failed: invalid range in character class」
結論から言うと私は「Crayon Syntax Highlighter」というプラグインを使用していて、このプラグインがPHP7.4以降がサポートされていないことが原因でした。
よってこのプラグインを無効化すればひとまずエラーは出なくなるでしょう。
しかし「Crayon Syntax Highlighter」はソースコードをきれいに表示させるプラグインですが、当然ながら無効化すると使えなくなってしまいます。
そこで主に次のような解決策があります。
・「Urvanov Syntax Highlighter」というプラグインを利用する
・他のソースコードを綺麗に表示させるためのプラグインに置き換える
・手作業で「Crayon Syntax Highlighter」を有効化したまま「Crayon Syntax Highlighter」の修正を行う。
私がおすすめするのは「Urvanov Syntax Highlighter」というプラグインを代わりに利用することです。
「Urvanov Syntax Highlighter」は「Crayon Syntax Highlighter」の後継となるプラグインですが、今まで使っていた「Crayon Syntax Highlighter」と同じUIとなります。
また、既存のソースコードを置き換える必要もありません。
表題のエラーが出ている状態はサイトにアクセスできない状態なので、さっさと解決したい場合は「Crayon Syntax Highlighter」を無効にして「Urvanov Syntax Highlighter」をインストールして有効にすることをおすすめいたします。
終わりに
今回はWordPressでPHPバージョンアップ時に表題のようなエラーが起きたときの対処法についてご紹介いたしました。
ディスカッション
コメント一覧
まだ、コメントがありません