「reCaptcha by BestWebSoft」のプラグインにv1.82のアップデート通知が来たので、さっそく更新してみました。アップデート自体は問題なく完了…したかと思いきや、なんと!WordPressが突然動かなくなりました。
この記事では、そのときに起きたエラーの内容と、どうやって復旧したかをメモとして残しておきます。
この方法を試される際は、あくまでご自身の判断でお願いします。万が一トラブルなどが発生しても、当方では責任を負いかねますので、ご了承ください。
起こったエラー内容
アップデート後、以下のようなエラーメッセージが表示され、WordPressが起動しなくなりました。
PHP Warning: require_once …
PHP Fatal error: require_once() …
public_html/(ドメイン名)/wp-content/plugins/google-captcha/wp-content/plugins/google-captcha/google-captcha.php on line 34
何やら google-captcha.php
の34行目で問題が起きているようです。
エラーの修正方法
この問題については、WordPress.orgのフォーラムの投稿を参考にしました。どうやら、プラグインのコード内で「存在しないファイル」を読み込もうとしてエラーになっていたようです。
修正する箇所
問題となっている google-captcha.php
の34行目のコードをコメントアウトすることでエラーを回避できます。
まずは、サーバーにログインして該当のファイルを探してください。
- レンタルサーバーを利用している場合は、管理画面に「ファイルマネージャー」のようなファイル操作機能が用意されていると思うので、そこからアクセスしてください。
- ファイルマネージャーがない場合は、FTPなどでファイルを修正してください。
以下のファイルを開きます。
public_html/(ドメイン名)/wp-content/plugins/google-captcha/google-captcha.php
33〜34行目に次のコードがあります。
require_once dirname( __FILE__ ) . '/includes/forms.php';
require_once dirname( __FILE__ ) . '/includes/forminator.php';
これを、以下のように修正します。
require_once dirname( __FILE__ ) . '/includes/forms.php';
//require_once dirname( __FILE__ ) . '/includes/forminator.php';
このように、34行目の「forminator.php」の呼び出し部分をコメントアウトすることで、エラーを防ぐことができます。
参考元によると、forminator.php
は有料版(Pro)に含まれているファイルとのこと。無料版ではこのファイルが存在しないため、読み込み時にエラーが出てしまうようです。
さいごに
もし同じようにv1.82にアップデートしてWordPressが動かなくなった場合は、まずこのファイルをチェックしてみてください。
無料版を使っている人にはこのエラー、起こる可能性があります…!