WordPress更新後の真っ白画面からの復旧方法と、今後失敗しないための安全な更新手順を実案件での経験を交えて解説します。
WordPress更新後の真っ白画面、その絶望感を知っていますか?
「WordPressの更新通知が来たから適用したら、サイトが真っ白に...」こんな経験、ありませんか?
先日、弊社にも緊急の相談が入りました。横浜の製造業A社のWeb担当者の方からです。「月曜の朝にWordPressを更新したら、会社のサイトが真っ白になってしまって、お客様からも『サイトが見れない』と連絡が...」という切迫した内容でした。
実は、WordPress更新による真っ白画面は決して珍しいトラブルではありません。弊社でも年間10件以上、このような緊急対応を行っています。しかし、正しい知識と手順があれば、必ず復旧できますし、何より事前の対策で99%は防ぐことができます。
この記事では、WordPress更新で真っ白になったサイトの復旧方法と、二度と同じ失敗をしないための安全更新術を、実際の案件での経験を交えてお伝えします。
なぜWordPress更新で真っ白画面になるのか?
最も多い原因は「プラグインとの互換性問題」
弊社の経験上、WordPress更新による真っ白画面の原因は以下の通りです:
冒頭のA社の場合も、古いバージョンのお問い合わせフォームプラグインが原因でした。WordPress 6.3の新機能と衝突し、PHPエラーが発生していたのです。
真っ白画面の裏で起きていること
ユーザーには「真っ白な画面」しか見えませんが、実際にはサーバー内部でPHPの致命的エラー(Fatal Error)が発生しています。主なパターンは:
- 関数の重複定義:新しいWordPressで使われている関数を古いプラグインも定義している
- 廃止された関数の使用:プラグインが使っている関数がWordPressから削除された
- メモリオーバー:新バージョンでメモリ使用量が増加し、既定値を超えた
特に3年以上更新されていないプラグインを使用している場合は、この問題が起きやすくなります。
緊急復旧手順:段階的アプローチで確実に直す
ステップ1:FTPでプラグインを無効化
まずは最も可能性の高い「プラグイン問題」から対処します。FTPクライアント(FileZilla等)を使用してサーバーにアクセスしてください。
/wp-content/plugins/
このフォルダ名を一時的に変更します:
/wp-content/plugins/ → /wp-content/plugins-backup/
これで全プラグインが無効化されます。サイトが表示されるか確認してください。
ステップ2:プラグインを1つずつ有効化して原因特定
サイトが復旧したら、原因プラグインを特定します:
plugins-backupフォルダ内に新しくpluginsフォルダを作成- バックアップフォルダから1つずつプラグインを移動
- 各移動後にサイトの動作確認
# 例:Contact Form 7から確認
mv plugins-backup/contact-form-7 plugins/
A社の場合、5番目のプラグインを移動した時点で再び真っ白になり、古いお問い合わせフォームプラグインが原因と判明しました。
ステップ3:テーマの問題対応
プラグイン無効化で解決しない場合は、テーマが原因の可能性があります:
/wp-content/themes/現在のテーマ/ → /wp-content/themes/現在のテーマ-backup/
WordPressは自動的にデフォルトテーマに切り替わります。
ステップ4:エラーログの確認
正確な原因を把握するため、エラーログを確認しましょう:
// wp-config.phpに追加
define('WP_DEBUG', true);
define('WP_DEBUG_LOG', true);
エラーログは以下の場所に出力されます:
/wp-content/debug.log
実案件から学ぶ:よくある失敗パターンと対処法
失敗パターン1:「バックアップを取らずに本番環境で直接更新」
ケース:川崎の歯科医院様で発生。金曜夜にWordPress更新を行い、週末中にサイトが真っ白のままに。
問題点:
- バックアップなしで復旧に時間がかかった
- 週末のため対応が遅れ、患者様からの問い合わせが取れない状況に
教訓:
- 更新前には必ずバックアップを取得
- 営業時間外での作業実施
- 可能な限りステージング環境での事前テスト
失敗パターン2:「プラグインの自動更新設定」
ケース:相模原のリフォーム会社様。プラグインの自動更新により、営業時間中にサイトダウン。
問題点:
// 危険な設定例
add_filter('auto_update_plugin', '__return_true');
解決策:
// 安全な設定:信頼できるプラグインのみ自動更新
add_filter('auto_update_plugin', function($update, $item) {
$allowed_plugins = [
'akismet/akismet.php',
'hello-dolly/hello.php'
];
return in_array($item->plugin, $allowed_plugins);
}, 10, 2);
失敗パターン3:「PHPバージョンの確認不足」
新しいWordPressが要求するPHPバージョンを満たしていない場合も真っ白画面の原因となります。
二度と失敗しない!安全なWordPress更新プロセス
ステージング環境での事前テスト
弊社では、クライアント様に以下のワークフローをお勧めしています:
flowchart TD
A[本番サイトのバックアップ] --> B[ステージング環境にコピー]
B --> C[ステージングでWordPress更新]
C --> D[全機能のテスト]
D --> E{問題なし?}
E -->|Yes| F[本番環境で更新実行]
E -->|No| G[問題修正]
G --> C
F --> H[動作確認]段階的更新スケジュール
一度にすべてを更新せず、段階的に進めることでリスクを最小化できます:
更新前チェックリストの活用
実際に弊社が使用しているチェックリストの一部をご紹介します:
// wp-config.phpでメンテナンスモードを有効化
define('WP_MAINTENANCE_MODE', true);
// バックアップコマンド例(wp-cli使用)
wp db export backup-$(date +%Y%m%d).sql
tar -czf backup-files-$(date +%Y%m%d).tar.gz wp-content/
自動監視システムの導入
サイトの異常を早期発見するため、簡単な監視スクリプトを設置することをお勧めします:
<?php
// 簡易サイト監視スクリプト
function check_site_status($url) {
$response = wp_remote_get($url);
$status_code = wp_remote_retrieve_response_code($response);
$body = wp_remote_retrieve_body($response);
// 真っ白画面の検出
if ($status_code === 200 && strlen(trim($body)) < 100) {
// アラート送信処理
wp_mail('[email protected]', 'サイト異常検知', '真っ白画面を検出しました');
}
}
復旧後の対策:同じ過ちを繰り返さないために
プラグインの棚卸しと整理
A社の復旧作業後、使用していた15個のプラグインを詳細に調査したところ、実際に必要なのは8個だけでした:
定期メンテナンススケジュールの確立
復旧後、A社では以下のメンテナンススケジュールを確立しました:
- 毎月第1金曜日:セキュリティアップデートの確認と適用
- 四半期ごと:プラグイン・テーマの大型アップデート
- 年2回:WordPress メジャーバージョンアップデート
この結果、その後1年間、一度もサイトダウンは発生していません。
緊急時連絡体制の整備
万が一の場合に備え、以下の体制を整えることをお勧めします:
- 技術サポート窓口の確保(弊社のような制作会社との保守契約)
- バックアップの自動化(日次バックアップとクラウド保存)
- 復旧手順書の作成(非技術者でも基本対応できるマニュアル)
まとめ:WordPress更新は「攻め」より「守り」が重要
WordPress更新による真っ白画面は、正しい知識と準備があれば必ず防げるトラブルです。弊社の経験では、事前対策を行ったクライアント様で同じ問題が再発したケースは過去5年間で0件です。
重要なのは「最新版にすぐ更新する」ことではなく、「安全に更新できる体制を作る」ことです。A社も現在は、安心してWordPressの機能を活用し、月間のお問い合わせ数が更新前の1.8倍に増加しています。
今すぐ実行すべき3つのアクション
- 現在のサイトの完全バックアップを取得
- 使用中のプラグイン一覧を作成し、最終更新日を確認
- ステージング環境の構築、または信頼できる制作会社への相談
もしWordPress更新に不安を感じていらっしゃるなら、ぜひ一度ご相談ください。弊社では、20年以上の実績を活かし、お客様のビジネスを止めない安全な更新プロセスをご提案いたします。