[WordPress] PHP8.0以上で「Invisible reCaptcha」の設定画面表示不具合・エラーが出るときの対処法
プラグイン「Invisible reCaptcha for WordPress」は最終更新が4年前で止まっており、PHP8.0以上の環境で使用しようとすると不具合が出るようになりました。
その際の対処法の記録。
設定画面の不具合
不具合の現象
設定画面のメニューがすべて「設定」になってしまう
・正常な表示
・PHP8.1での表示
設定のメニューが全て「設定」になってしまい「問い合わせフォーム」の設定が出来ない為、
reCaptchaをサイトに表示出来ません。
対処法
PHPバージョンを8.1 → 8.0 に引き下げる事で正常に表示されるようになります。
フォーム送信時のエラー
不具合の現象
フォームを送信すると、以下のようなエラーが表示されてしまう
対処法
・MchBasePublicPlugin.php の書き換え
必ずバックアップをとってから書き換えを行ってください。
書き換えは自己責任でお願いします。
書き換えるファイルのパス
wp-content/plugins/invisible-recaptcha/includes/plugin/MchBasePublicPlugin.php
書き換える内容
private function __wakeup()
↓
public function __wakeup()
・MchIPUtils.php の書き換え
書き換えるファイルのパス
wp-content/plugins/invisible-recaptcha/includes/utils/MchIPUtils.php
書き換える内容
$seg {0}
↓
$seg [0]