WordPressを更新したら、突然エラーの画面が表示されてWordPressにログインできなくなってしまったことはありませんか?
このエラーが起きてしまうと、サーバーの中に入るなど技術的な対応が必要になってしまうため、エラーを恐れて更新をしないという方が一定数いるように感じています。
しかしながら、エラーが出てもリカバリーモードを使うことでWordPressにログイン出来る可能性があります。
今回は、このWordPressのリカバリーモードについてご紹介したいと思います。
WordPressの更新でエラーが出てもログインが出来るリカバリーモード
WordPressの本体、プラグイン、テーマの更新によってエラーがでてしまうと、WordPressの管理画面にさえログインできなくなってしまいます。
そのため、WordPressの更新の際にはバックアップが必ず必要とされていますが、実のところWordPressにログインできないことには復元もできないプラグインもあるため、実はリカバリーモードによる復旧方法を知っている方が大事だったりします。

ただし、このリカバリーモードでログインするためのURLが記載されたメールが届くことが前提になるため、メールが届くようになっていることが大事です。
エラーのデモとリカバリーモードまでの流れ
まず、更新するとエラーが出るプラグインを作ったので、それを使ってデモを行います。

これは、プラグインを更新を完了した状態です。

トップページにアクセスするとエラーが表示されました。

管理者宛にエラー発生のメールが届きました。
もしサイトが壊れていてダッシュボードに正常に接続できない場合、WordPress には特別な「リカバリーモード」があります。これによりダッシュボードに安全にログインし、さらに調査をすることができます。
という文章のしたに、トークン付きのログインURLが表示されるのでクリックしてアクセスしてみます。

リカバリーモード用のログイン画面が表示されますので、ログインします。

無事ログインできました。右上には”リカバリーモードを終了“というリンクが表示されていますので、リカバリーモードでログインしてることがわかります。

原因となったプラグインを見ると、エラーが表示されているのがわかります。ですので、無効化をします。

プラグインが無効化されました。次に、シークレットモードを使ってサイトにアクセスできることを確認します。

無事エラーがなくなり、トップページが表示されました。

そうしたら、リカバリーモードの終了をクリックして、通常のダッシュボードに戻ります。これでもしエラーがなければ、問題なくダッシュボードに入れる状態になりました。
もしエラーが続く場合はサーバーのバックアップから復元
もし、先程のようにエラーが出ているプラグインを停めてもまだエラーが出る場合は、テーマが原因だったり、WordPress本体が原因の可能性もあります。もしくは、PHPのバージョンアップとか。
まずは、リカバリーモードでログインできたら、プラグイン以外にもエラーが出ていないかを一通り確認してみて、問題なく表示されるところまでは進めてみてください。
それでもよくわからない場合は、サーバーで自動で行われているバックアップで前日の状態に復元するのが確実です。
そういった意味では、レンタルしているサーバーのバックアップから復元する方法は、あらかじめ知っておくほうが良いです。
理想的には、最低でも一度は復元の練習をしてみることをおすすめします。
エラーが分かったあとにどうするか
もし使っているプラグインが更新でエラーを起こした場合考えられるのは
- PHPのバージョンが古すぎるパターン
- PHPのバージョンは推奨だが、プラグインがサポートしなくなったパターン
この2つです。
1. PHPのバージョンが古すぎるパターン
使っているPHPのバージョンが古すぎる場合、PHPのバージョンを上げれば良いと単純に思いますが、なかなかうまく行かないことが多いです。
というのも、他のプラグインが今度は、2. PHPのバージョンは推奨だが、プラグインがサポートしなくなったパターンでエラーを起こす可能性があり、切り分け試験が必要になってしまい、本番環境で実験するにはリスクが高すぎるためです。
この場合は、というよりもPHPのバージョンをサーバーに詳しくない方が自分でやるのは基本的おすすめしませんので、お近くのWEBエンジニアさんにご相談ください。
2. PHPのバージョンは推奨だが、プラグインがサポートしなくなったパターン
この場合は、単純にそのプラグインを停めたあとは使わないようにするしかありません。
検索で調べて、同じような機能で現在もサポートしているプラグインを探すのも有りだと思います。私自身もクライアントさんの対応でよくやります。
サポートしていないプラグインを使い続けるのは、やめましょう。ましてや、そのプラグインを使うためWordPressの本体を更新しないことは、とても危険なので更新は必ずしましょう。
まとめ
更新でエラーが出ても、いきなりサーバーの中に入る必要はありません。まずはリカバリーモードを試してください。管理画面に入れさえすれば、原因のプラグインを止めて元に戻せます。
今回の流れを、あらためて整理します。
- エラーが出たら、管理者宛のメールを確認する(リカバリーモードのURLが届く)
- そのURLからログインし、エラーが出ているプラグインを無効化する
- シークレットモードでサイトが表示されることを確認する
- リカバリーモードを終了して、通常の管理画面に戻る
- それでも直らなければ、サーバーのバックアップから前日の状態に戻す
この流れには前提が2つあります。ひとつは、サイトからのメールがきちんと届くこと。リカバリーモードのURLはメールでしか届かないので、迷惑メールに入る状態のままだと、この一番簡単な道が最初から使えません。
もうひとつは、バックアップからの戻し方を知っていること。使っているサーバーの復元画面がどこにあるのか、一度も見たことがないという方は、落ち着いているうちに一度だけ練習しておいてください。本番で困ってから調べるには、手順が多すぎます。
エラーの原因は、たいていPHPのバージョンが古すぎるか、プラグインがサポートされなくなったかのどちらかです。前者は自分で触らずに詳しい人に任せてください。後者は、そのプラグインを使うのをやめるのが結局いちばん早いです。
いずれにしても、エラーが怖いからといって更新しない、という選択だけは避けてください。更新していないサイトは、時間が経つほど直すのが難しく、費用も高くなります。戻せる準備さえしておけば、更新は怖いものではありません。
なお、こうした更新やバックアップ、フォームのメールの確認を一緒にやるWordPress保守・運用会を、月2回ひらいていますので、興味がある方はぜひ参加をご検討ください。