WordPressの「重大なエラー」の直し方 | 復旧モードのメールの使い方

結論

「重大なエラー」が出たら、管理者宛てのメールのリンクから入って、停止されたプラグインかテーマを無効化しなさい。

サチエ

あら、のりお。顔色が悪いわよ。

のりお

会社のWordPressを開いたら、「重大なエラー」って出てしまって……。メールを見なさいとは書いてあるんですが、何のことか分からなくて。

サチエ

慌てる男はモテないわよ。その画面、ちゃんと答えが書いてあるの。

のりお

本当ですか。お願いします、教えてください。

「重大なエラー」と復旧モードとは

サイトの何かが重大なエラー(致命的エラー)を起こして、WordPressが期待どおりに動けない状態なのよ。公式が示す画面の文言は、こうなっているわ。

There has been a critical error on this website. Please check your site admin email inbox for instructions.

「管理者のメール受信箱を見てください」という案内ね。

原因として公式が挙げているのは、次の5つよ。

  • プラグインの競合
  • テーマの互換性の問題
  • 互換性のないPHPバージョン
  • メモリ上限への到達
  • WordPressファイルの破損

PHPバージョンの警告は、サイトヘルスの見方で見分けられるわ。

復旧モードは、WordPress 5.2で入った機能よ。致命的エラーが起きても、管理者が開発者の助けなしに対処できるの。通常なら管理画面が使えなくなるエラーでも、ログインして操作できるようになるわ。

似た画面との違い

メールが届いた時の手順

致命的エラーが起きると、サイトの管理者メールアドレスと、スーパー管理者にメールが届くの。内容は、問題の報告と、復旧モードに入るための秘密のリンクよ。

  1. 管理者メールアドレスの受信箱を開き、WordPressからのメールを探すの。
  2. 本文のリンクをクリックするのよ。いま使っているブラウザに Cookie が付き、復旧モードが始まるわ。
  3. 表示されたログイン画面で、ログインしなさい。
  4. 復旧モードが有効という通知と、一時停止された拡張機能(プラグイン・テーマ)の一覧、それぞれのエラーを確認するの。
  5. 一覧に出た原因のプラグインかテーマを、無効化するのよ。
  6. 画面の管理バーに残っている復旧モードのボタンから、復旧モードを終了しなさい。
  7. サイトを再読み込みして、表示されるか確認するの。

手順2のリンクは、サイトを管理するブラウザで開きなさい。復旧モードはアカウントではなく、そのブラウザの Cookie に結びつくからよ。

無効化したあとの選択肢

公式は、管理者にできることを3つ挙げているわ。

  • 拡張機能を無効化する(公式は「通常は一時的」と説明)
  • 技術力があれば、問題を直して再開する
  • 拡張機能の作者に連絡する。サポートチケットには、表示された正確なエラーを添える

エラーの文面は、そのままコピーして残しておきなさい。伝えやすくなるわ。

復旧モードの仕様

復旧モードに入っただけでは直らない

復旧モードは、問題を一時的に避けて、管理画面に入るための仕組みよ。原因のプラグインやテーマを無効にして、はじめて直るの。

管理バーのボタンで復旧モードを終えると、Cookie が消えて、拡張機能が通常どおり動くわ。拡張機能がまだ壊れていれば、エラーは戻ってくるのよ。

他の訪問者には、壊れたサイトが見えたまま

拡張機能の一時停止は、復旧モードに入ったブラウザだけに適用されるの。ほかの訪問者は、問題が直るまで、壊れたサイトを見ることになるわ。

自分の画面で正常に見えても、直ったとは限らないのよ。自分にだけ綺麗に見せている店と同じ。お客さんから見える姿が本当の姿なの。無効化まで済ませてから、復旧モードを終了なさい。

メールが届かない時の確認

次の順に確認するのよ。

  1. 迷惑メールのフォルダを探す。
  2. 管理者メールアドレスが、いま見ている受信箱のものか確認するの。
  3. 届かないままなら、デバッグログでエラーの内容を確認しなさい。

debug.log でエラーを確認する

公式は、重大なエラーの画面が出た時の手順として、管理者の受信箱の確認に続けて、wp-config.php でデバッグモードを有効にし、wp-content/debug.log を見る方法を案内しているわ。

wp-config.php に、次の3行を、続けて書きなさい。

define( 'WP_DEBUG', true );
define( 'WP_DEBUG_LOG', true );
define( 'WP_DEBUG_DISPLAY', false );

置く場所は、wp-config.php の中の「That’s all, stop editing! Happy blogging.」の行より前よ。

WP_DEBUG_LOG を true にすると、エラーはコンテンツディレクトリの debug.log(通常は wp-content/debug.log)に書き出されるの。WP_DEBUG_DISPLAY を false にすると、エラーは画面に表示されないわ。

wp-config.php を編集する前に、バックアップを取りなさい。手順はWordPressのバックアップを手動で取る方法にあるわ。wp-config.php の書き方の注意は、wp-config.phpの編集方法を見てね。

公式は、WP_DEBUG などのデバッグ機能を、公開中のサイトで使うことを勧めていないのよ。 ローカル環境かステージング環境で使うものなの。公開中のサイトで確認する場合は、確認が終わったら、定数を false に戻しなさい。

ログで原因が分かったら

debug.log に、原因のプラグインやテーマが出ていれば、管理画面に入れなくても、FTPで停止できるわ。手順はWordPressが真っ白になった時の直し方にあるの。

よくある質問

メールは誰に届きますか。

サイトの管理者メールアドレスと、スーパー管理者に届くわよ。

復旧モードのリンクを開いたら、直りますか。

直らないわ。復旧モードは、管理画面に入るための仕組みなの。原因のプラグインかテーマを無効にしなさい。

復旧モードを使わずに、直す方法はありますか。

あるわよ。FTPでプラグインを停止する方法は、WordPressが真っ白になった時の直し方にあるわ。

のりお

リンクを開いただけでは、直らないんですね。

サチエ

そう。入口を開けてもらっただけよ。中の悪さをしている子を止めるのは、あなたの仕事。

のりお

メールが届かなかったら、迷惑メールと管理者のアドレスから見てみます。

サチエ

順番を守れば大丈夫よ。落ち着いてやりなさい。

まとめ

  • 「重大なエラー」の画面が出たら、管理者メールの復旧モードのリンクから入り、停止された拡張機能を無効化する。
  • 復旧モードに入るだけでは直らない。他の訪問者には、壊れたサイトが見え続ける。
  • メールが届かない時は、迷惑メールと管理者メールアドレスを確認し、debug.log でエラーを調べる。

予防として、更新や設定変更の前にバックアップを取っておきなさい。手順はWordPressのバックアップを手動で取る方法よ。

出典

この記事を書いた人

サチエ

サチエ

元銀座ママのサチエが、WordPressの困りごとを人生と夜の世界の例えで教えるサイトです。慌てる男はモテないわよ。順番よ、順番。

← 記事一覧に戻る