WordPressの画面が真っ白・500エラーになったときの原因と復旧手順
WordPressを運用していると、突然画面が真っ白になったり、「致命的なエラーが発生しました」「500 Internal Server Error」といった警告が表示されて管理画面にすらアクセスできなくなるトラブルが発生することがあります。
自分のサイトが消えてしまったのではないかと焦ってしまいがちですが、データ自体はサーバー上に残っていることがほとんどです。
本記事では、画面が真っ白になる主な原因と、専門知識がなくても順番に試せる具体的な復旧手順を分かりやすく解説します。
1. 画面が真っ白になる4つの主な原因
WordPressで画面が表示されなくなる原因の9割以上は、プログラム処理の中断やシステム上の競合によるものです。
- プラグインの競合・不具合
新しいプラグインの導入やアップデート後に、テーマやWordPress本体との互換性が崩れて発生します。
- テーマ(functions.php)の記述ミス
テーマのコードを直接編集した際、カンマや記号の抜け、全角スペースの混入などによってプログラムが停止します。
- PHPのバージョン不適合
サーバーのPHPバージョンを更新したことで、古いテーマやプラグインが動かなくなるケースです。
- PHPのメモリ上限(Memory Limit)オーバー
画像処理や重いプラグインの同時稼働により、サーバー上で割り当てられたメモリ上限を超過してエラーになります。
2. 【ステップ1】真っ白画面から復旧させるための緊急対処手順
管理画面が開けない場合は、サーバーの「ファイルマネージャー」機能や「FTPソフト(FileZilla等)」を使用して直接ファイルを編集・操作します。
対処法①:プラグインを強制的に一括停止する
最も多い原因がプラグインです。すべてのプラグインを一時的に無効化してエラーが解消するか確認します。
- レンタルサーバーの管理画面にログインし、「ファイルマネージャー」を開く
public_html等の中にあるwp-contentディレクトリへ移動pluginsという名前のフォルダを探す- フォルダ名を
plugins_oldなどに一時的に変更する
フォルダ名を変更することで、WordPressはすべてのプラグインを読み込めなくなり、強制的に全プラグインが停止状態になります。この状態でサイトにアクセスし、画面が表示されれば「いずれかのプラグインが原因」だと特定できます。
原因プラグインの特定手順: フォルダ名を元の
pluginsに戻したあと、管理画面から1つずつプラグインを「有効化」していき、再び画面が白くなったプラグインがエラーの原因です。そのプラグインを削除または停止しましょう。
対処法②:テーマをデフォルトテーマに切り替える
テーマの編集(特に functions.php)直後にエラーが発生した場合は、テーマのコードミスが原因です。
- ファイルマネージャーで
wp-content/themesへ移動 - 現在使用中のテーマフォルダ(例:
swellやcocoon-master)の名前を一時的に変更(例:swell_old) - WordPressは自動的にサーバーにインストール済みのWordPress標準テーマを読み込むようになり、エラーが解除されます。
管理画面に入れるようになったら、編集したコードを元に戻すか、バックアップファイルから functions.php を上書き復元してください。
対処法③:PHPのバージョンを戻す・変更する
サーバーの管理画面でPHPのバージョンを変更した直後に画面が白くなった場合は、バージョン変更が原因です。
- レンタルサーバーの管理パネルを開く
- 「PHPバージョン切替」 などの項目を開く
- エラーが出る前に使用していたPHPバージョンへ一時的に戻す
- サイトが復旧したら、古いプラグインやテーマを最新状態に更新してから再度PHPバージョンを上げます。
3. 【ステップ2】デバッグモードを使った原因の特定方法
「どのファイルでエラーが起きているのか分からない」という場合は、WordPressのデバッグモードを一時的に有効化します。
画面が真っ白になる代わりに、エラーが発生しているファイル名と行番号(具体的なメッセージ)が画面上に表示されるようになります。
デバッグモードの有効化手順
- ファイルマネージャーで、WordPressのルートディレクトリ(
wp-config.phpがある場所)を開く wp-config.phpファイルを編集する- 以下の記述を探す:
define( 'WP_DEBUG', false );
falseをtrueに書き換えて保存する:
define( 'WP_DEBUG', true );
サイトへアクセスすると、以下のようなエラーログが画面上部に表示されます。
表示例:
Fatal error: Uncaught Error: Call to undefined function... in /home/site/public_html/wp-content/plugins/sample-plugin/main.php on line 42
この表示から「sample-plugin というプラグインの42行目で致命的エラーが起きている」ことが特定できます。
※復旧作業が終わったら、セキュリティ上の理由から必ず WP_DEBUG を false に戻しておいてください。
4. 突然のエラーに備える予防策
復旧作業の経験を次回に活かすため、以下の予防策を徹底しましょう。
- 更新・編集前に必ずバックアップを取る(プラグイン「UpdraftPlus」などでDBとファイルを保持)
functions.phpを管理画面から直接編集しない(少しの記述ミスで即座に画面が白くなるため、子テーマを使用するかプラグインCode Snippets等を活用する)- 使っていないプラグインや古いテーマは削除する
まとめ
画面が真っ白になっても、慌ててWordPressを再インストールする必要はありません。
- ファイルマネージャーで
pluginsフォルダ名を変更してプラグインを停止してみる - テーマフォルダ名を変更してデフォルトテーマに落とす
wp-config.phpのデバッグモード(WP_DEBUG)を有効にしてエラー箇所を特定する
このステップを冷静に実行すれば、大半のトラブルは即座に解決できます。問題が解消されたら、事前に取っておいたバックアップを活かして安全な状態へ完全復元を行いましょう。