先日、プラグインの更新をしてると画面上に「失敗」と言う文字が表示され、ヤバいと思って一度ブラウザ画面更新すると以下のような文字が表示されました。
「このサイトで重大なエラーが発生しました。サイト管理者のメール受信ボックスを確認してください」
これ以降更新しても何も変わらず。やってしまったと一時思考が停止しました。
問題は分かっているんです。プラグインの更新失敗。
恐らくプラグインのソースが現在動かしているWPのバージョンと互換性がなかったんでしょう。そのためアップデートエラーがDBに記憶され、画面更新したらエラー画面となったと。
エラー文字の下にあるトラブルシューティングについてのリンクをクリックすると、修復方法を紹介しているページに移動しましたが、プラグインエラーについてのページでした。
問題の原因がWPで把握し、その復旧作業ページに移動するよう自動的に選んでくれてるのかな?
プラグインのアップデートや有効化によりエラーが表示した場合、復旧作業としてはDBの内容を直接編集する情報を紹介されました。
方法は、
すべてのプラグインを無効化できます。
1.wp_options テーブルの option_name カラム (フィールド) で active_plugins という行を見つける
2.option_value フィールドの値を a:0:{} に変更するWPページより引用
ということなんだそう。無効化にすればエラーに干渉しないから一先ず復旧できるってわけですね。
早速データベースをphpMyAdminで操作しようかと思ったとき、ふとエラー文字を読み返しました。
「サイト管理者のメール受信ボックスを確認してください」
管理者登録した際に入力したメールアドレス宛に何か送られてるのかなとメール受信BOXを確認すると、サイトからメールが飛んできてました。中身を確認すると、
こんにちは。
WordPress 5.2から、サイトでプラグインやテーマが致命的なエラーを発生させた場合にそれ
を検知してこの自動メールでお知らせする機能が追加されました。
今回の場合、WordPress がプラグイン *****(プラグイン名) でエラーを捉えました。
・・・
省略
・・・
もしサイトが壊れていてダッシュボードに正常に接続できない場合、WordPress には特別な
「リカバリーモード」があります。これによりダッシュボードに安全にログインし、さらに調査をすることができます。
なんと!丁寧に原因のプラグイン名まで記載されているではないですか!
WP5.2からの機能なんだ、すごいな。そしてこの内容に書いてある気になったのは「リカバリーモード」という文字。これは何だろうか?
この文字の下に実はURLが表記されていて、それをクリックすると自身のサイトに移動しました。
エラーが表示してるのに?と思いましたが、移動するとログイン画面が表示されました!なんで??
そしてログインすると画面右上に赤バックの白文字で「リカバリーモード」と追加された管理画面が表示しました。すごい!
無効化されていましたが、自分の作業した内容としては、
プラグイン削除 → WPバージョンアップ → 再度プラグインインストール
その後リカバリーモードを終了をクリックしてモードを終了。トップ画面をみると無事復旧していました。よかったー!!
今回の件でプラグインの更新は安易に行わないことが良いと経験しました。
もしプラグインの更新を行う場合はWPのバージョンが最新で、そのバージョンと互換性があるか確認し、更新する際は一度無効化にして行うようにした方が無難な気がします。
そして、管理者のメールアドレスはしっかり受信できるメアドを登録しておくことが大事だと改めて思わされました。