WordPressのPHP変更後に「このサイトで重大なエラーが発生しました」と表示され、サイトが真っ白になることがあります。
色々と原因はありますが、多くはテーマやプラグインが最新のバージョンに対応していないためにエラーになることがほとんどです。
その中でも「Count Per Day」というアクセス解析のプラグインを使用しているサイトは百発百中でエラーになります。
でもこのプラグイン、めちゃくちゃ使い勝手がいいんですよね。
替わりのアクセス解析ツールを探してみるも「Count Per Day」に匹敵するプラグインはなかなかありません。
エラーが発生して泣く泣く削除した、という人もいると思いますが、実はちょっとした編集をするだけで使うことができるんです。
この記事では、重大なエラーを解消しPHP8.1でも「Count Per Day」を使い続ける方法をお伝えします。
「Count Per Day」を入れてるとなぜエラーになるのか?
PHPバージョンは常に最適な環境でサイト運営ができるようアップデートされていくんですが、その過程で古いカスタムコードが廃止されたりします。
通常はPHPに合わせてプラグインもアップデートされるのですが、「Count Per Day」はWordPressの公式プラグインではないためアップデート版がありません。
PHP8.1から「Count Per Day」で使われているコードの一部が廃止になったため、サイトに重大なエラーを引き起こしてしまうんです。
つまり、原因となるコードを最新のPHPに対応したものに書き換えればオーケー。
ちなみにPHP更新について知りたい人は下の記事を読んでみてください。
【1分で解決】PHP8.1で「Count Per Day」を使う方法
結論から言うと、「counter-core.php」の1517行目を以下に書き換えるだけで解決します。
【変更前】
$last = strtolower($val{strlen($val)-1});
【変更後】
$last = strtolower($val[strlen($val)-1]);
本当はFFFTPから書き換えた方が安全なのですが、それまたややこしく感じてしまう方もいると思うので、ここではWordPress上から書き換える方法を紹介します。
編集する際は間違って他のコードを書き換えたり削除しないように注意してください。
必ずバックアップをとってから行ってください。
WordPressダッシュボード→プラグイン→プラグインファイルエディターから以下の画面に移動します。
編集するプラグインは「Count Per Day」を選択。
プラグインファイルは「counter-core.php」を開きます。
該当の1517行目までスクロールしてコードを書き換えます。
作業が完了したらサイトが正常に表示されるか確認してください。
プラグインファイルが見つからない場合
サイトを誰かに作ってもらった場合などはファイルを編集する権限を持ってないことがあります。
その場合は、サイト制作者に依頼するかサーバーからファイルを編集するかの2択になります。
「Count Per Day」使用上の注意
最後になりますが、「Count Per Day」は数年前にガイドライン違反でWordPressの公式プラグインから外れています。なので、使用は自己責任となります。
とは言え、かなり使い勝手がいいのでPHP8.1でも使い続けたい!という方は是非この方法を試してみてください。
自分で編集するのが不安な方、編集できずにお困りの方は当店で代行できることがありますのでまずはお問い合わせください。