【エラー解決】「must have public visibility」Warningの解決

エラー解決

はじめに

最近このサイトを開いた時にサイト上部に以下画像の様な警告が出るようになったのでこの警告をどうやったら消せるか考えてみた。

原因

詳しい解決策については次の章で取り上げるが、警告文を見る限りは「__wakeup()はpublic可視性でなければいけない」的な警告をされているのでとりあえずは表示されているMchBasePublicPlugin.phpを参照して必要に応じて編集する必要がありそう。

解決

どうやらWordPressのプラグイン「InvisibleReCaptcha」(ログイン画面でreCaptcha認証が必要になるスパム対策プラグイン)が悪さしているようなのでまずは表示されている「MchBasePublicPlugin.php」の37行目の__wakeup()メソッドを確認する。

MchBasePublicPlugin.phpの確認

警告文で表示されているMchBasePublicPlugin.phpの37行目を確認すると以下の様に書かれていた。

どうやら可視性がpublicであるべきものがprivateで指定されているから起きているもののような感じがするので以下のように編集した。(下線が変更部分)

public function __wakeup()
{}

結果

とりあえず上記の様に編集してページを更新したところ警告がなくなった。

なのでとりあえずはこれでオッケーなはず。

wp-config.phpで「ini_set(‘display_errors’, ‘Off’);」ってやれば警告文は隠せるんだけどそれだと警告とかエラー出てもわからなくなるからとりあえずはこれで。

コメント

タイトルとURLをコピーしました