プラグイン更新後にWordPressで「技術的な問題が発生しています」エラーが発生した場合の修正方法

初級📝 WordPress2026-05-01| WordPress 5.2以上, PHP 7.4以上, Linux/Apache/Nginx

Error Message

The site is experiencing technical difficulties. Please check your site admin email inbox for instructions.
#wordpress#トラブルシューティング#致命的なエラー#php#wp-admin

問題の概要「更新」ボタンをクリックするのは本来なら嬉しい瞬間です。しかし、代わりに画面が真っ白になり、*「サイトで技術的な問題が発生しています」*という冷たい一文が表示されることがあります。これは非常にストレスが溜まるものですが、実はWordPressのセーフティネット(安全装置)なのです。

WordPressはバージョン5.2で、恐ろしい「真っ白な画面(White Screen of Death)」をなくすためにこの機能を導入しました。これはPHPの致命的なエラー(Fatal Error)が発生したことを意味します。サーバー全体をクラッシュさせるのではなく、WordPressがクラッシュを検知してプロセスを停止させたのです。多くの場合、これは新しいプラグインのバージョンがテーマと競合しているか、プラグインがPHP 8.1以上を必要としているのに、サーバーが7.2のような古いバージョンで動作していることが原因です。

主な原因なぜサイトが突然動かなくなったのでしょうか?通常、以下の3つのいずれかが原因です。

  • コードの競合: 2つのプラグインが全く同じ関数名を使用しようとして、衝突が発生している。- PHPバージョンの不一致: 更新されたプラグインが、PHP 8.x以降でしか動作しない最新の機能(Union Typesなど)を使用している。- 転送の失敗: 更新中にサーバーが一瞬不安定になり、プラグインのファイルが不完全な状態で残ってしまった。## 解決策1:WordPressリカバリーモードを使用するこれはデジタルの救急箱です。2019年以降、WordPressはクラッシュが発生するたびに、サイトの管理者に秘密の「リカバリー」リンクを送信するようになりました。これが現在利用できる最も手っ取り早い解決策です。
  • 管理者ユーザーに関連付けられたメールアカウントを開きます。- [サイト名] サイトで技術的な問題が発生していますという件名のメールを探します(見当たらない場合は迷惑メールフォルダを確認してください)。- メール内のリカバリーモードのリンクをクリックします。これにより、問題のあるプラグインをあなただけに限定して一時停止させた特別なセッションが作成されます。- プラグイン画面に移動します。- WordPressが問題のあるプラグインを赤色で強調表示しています。無効化をクリックします。- 画面上部のリカバリーモードを終了ボタンを押し、他のユーザーからもサイトが見える状態に戻します。## 解決策2:FTPまたはファイルマネージャーによる「強制停止」リカバリーメールが届かない場合は、手動でプラグインを無効化できます。プラグインのフォルダ名を変更することで、WordPressにそのプラグインを強制的に無視させます。
  • FileZillaなどのFTPクライアント、またはホスティングのcPanelを使用してサーバーにログインします。- /wp-content/plugins/ディレクトリに移動します。- 更新したばかりのプラグインのフォルダを探します(例:contact-form-7)。- そのフォルダ名をcontact-form-7-oldに変更します。- ウェブサイトを更新(リロード)します。WordPressはファイルが「消えた」と判断し、自動的にプラグインを無効化して、サイトを即座に復旧させます。## 解決策3:WP_DEBUGでエラー箇所を特定するどのプラグインが原因か分からない場合は、WordPressの内部エラーログを表示させることができます。デフォルトでは、セキュリティのためにこれらは非表示になっています。
  • サイトのメインフォルダにあるwp-config.phpファイルを開きます。- define('WP_DEBUG', false);という行を探し、trueに変更します。- そのすぐ下に、以下の2行を追加します:``` define('WP_DEBUG_LOG', true); define('WP_DEBUG_DISPLAY', false);

エラーが発生しているページをリロードします。`/wp-content/`フォルダを確認すると、`debug.log`という新しいファイルが作成されています。これを開き、最新のエントリを確認してください。以下のような内容が表示されているはずです:

PHP Fatal error: Uncaught Error: Call to undefined function... in /wp-content/plugins/broken-plugin/index.php:42


このログによって、どのプラグインのどの行がクラッシュの原因になったのかが正確に分かります。
## 解決策4:上級者向けの方法(WP-CLI)SSHアクセスが可能な場合は、ターミナルから数秒で修正できます。プロはこの方法を使います。
- サーバーにSSHでログインし、ウェブのルートディレクトリに移動します。- 現在有効なプラグインを確認するために、次のコマンドを実行します:```
wp plugin list --status=active

怪しいプラグインが見つかったら、停止させます:

wp plugin deactivate plugin-slug-name

修正が完了したことを確認する方法プラグインを無効化した後は、必ずプライベートウィンドウまたはシークレットウィンドウでサイトを開いて確認してください。これにより、エラーのキャッシュ版を見ているだけではないことを保証できます。ホームページが読み込まれ、/wp-adminにログインできれば、復旧完了です。

再発防止のアドバイス- ステージング環境でテストする: ステージングサイトを活用しましょう。本番サイトに影響を与えずに、壊れても問題ない「砂場」でテストできます。- 一つずつ更新する: 10個の更新がある場合、「すべて更新」は押さないでください。一つずつ実行することで、どの更新がエラーを引き起こしたかを特定しやすくなります。- PHPの確認: 最新のWordPressプラグインは、PHP 7.4や8.0以上を必要とすることが多いです。ホスティングのダッシュボードを確認し、5.6のような古いバージョンで動作していないか確認してください。- こまめにバックアップ: 大規模な更新作業の前には、必ず最新のバックアップを取ってください。UpdraftPlusなどのツールを使えば、ワンクリックでバックアップが可能です。

Related Error Notes