【WordPress】「このサイトで重大なエラーが発生しました」の原因と解決方法

【WordPress】「このサイトで重大なエラーが発生しました」の原因と解決方法 WordPress

WordPressを利用していると、突然「このサイトで重大なエラーが発生しました」と表示され、サイトが開けなくなることがあります。原因はテーマ・プラグインの不具合、PHPのバージョン不一致、カスタムコードのミス、サーバー制約などさまざまです。本記事では、最短で復旧するための切り分け手順を状況別に整理し、原因別の対処をまとめます。

まず確認してください(状況別)

「重大なエラー」が出ていても、管理画面に入れるケース管理画面にも入れないケースがあります。最初にここを切り分けると、無駄なく復旧できます。

管理画面にもアクセスできない場合(FTPで切り分け)

フロントだけでなく管理画面でもエラーが出る場合は、まずプラグイン/テーマを一時的に無効化して原因を切り分けます。復旧できたら、原因の候補を絞り込んで修正します。

  • FTPまたはサーバーのファイルマネージャーでログイン
  • /wp-content/plugins/ の対象プラグイン(またはフォルダ全体)を一時的にリネームして無効化
  • 改善しない場合は、/wp-content/themes/ の使用中テーマを一時的にリネームし、デフォルトテーマ(Twenty Twenty系など)へ切り替え
  • 管理画面/フロントの復旧を確認

管理画面にはアクセスできる場合(ログ確認・コード修正)

管理画面に入れる場合は、エラーログを確認して原因箇所を特定できるため、復旧が早いです。特に「直前に追加したコード」「更新したプラグイン」「PHPバージョン変更」を優先的に疑います。

  • 直前の変更内容(functions.php、カスタムプラグイン、ショートコード、テーマ更新)を確認
  • エラーログ(debug.logやサーバーログ)を確認し、エラー発生ファイル・行番号を特定

原因1:テーマやプラグインの不具合

最も多い原因はテーマやプラグインのエラーです。特に更新直後に発生するケースが多く、コードの不整合やPHPのバージョン非対応が考えられます。

解決方法

  • FTPまたはサーバーのファイルマネージャーでログイン
  • /wp-content/plugins/ フォルダ内のプラグインを一時的にリネームして無効化
  • /wp-content/themes/ の現在使用中のテーマをリネームしてデフォルトテーマ(Twenty Twenty系)に切り替える
  • 管理画面にアクセスできるか確認する

復旧できたら、無効化したプラグインを1つずつ戻して再現確認すると原因を特定できます。

原因2:PHPのバージョン不一致

WordPress本体・テーマ・プラグインが想定するPHPバージョンと、サーバー側のPHPバージョンが一致していないと致命的エラーが発生することがあります。更新をきっかけに表面化することもあります。

解決方法

  • サーバーのコントロールパネルにアクセス
  • PHPバージョンを変更(例:7.4~8.1など環境に応じて)
  • 変更後、サイトに再アクセスして動作確認

エラーが出始めたタイミングが「プラグイン更新直後」「PHP更新直後」の場合は、この切り分けが効果的です。

原因3:functions.phpやカスタムコードのエラー

子テーマやカスタムプラグインにコードを追加した際、文法エラー、関数の重複、未定義関数の呼び出しなどがあると致命的エラーが発生します。

解決方法

  • 直前に編集した functions.php やカスタムプラグインを確認
  • バックアップ(直前の正常版)がある場合は差し替えて復旧確認
  • エラーログの「ファイル名」「行番号」を見て、該当箇所を修正

原因4:メモリ不足やサーバー環境の制約

処理が重いテーマやプラグインを使用していると、PHPメモリ上限を超えて致命的エラーになることがあります。アクセス急増やバックグラウンド処理(画像生成・バックアップ等)で発生することもあります。

解決方法

  • wp-config.php に以下を追加してメモリ上限を引き上げる
define( 'WP_MEMORY_LIMIT', '256M' );
  • サーバーのリソース制限(メモリ・CPU)を確認し、必要に応じて上位プランへ変更

原因5:エラーログの確認不足

「重大なエラー」という表示だけでは原因を特定できません。復旧を早めるには、エラーログで「どのファイルの何行目で落ちているか」を確認するのが最短です。

解決方法

  • wp-config.php にデバッグモードを有効化する
define( 'WP_DEBUG', true );
define( 'WP_DEBUG_LOG', true );
define( 'WP_DEBUG_DISPLAY', false );
  • /wp-content/debug.log を確認して、エラー内容(ファイル名・行番号)を特定

サーバーによっては、コントロールパネルの「エラーログ」や、サーバーのログファイル(Apache/Nginx/PHP)に詳細が出ることもあります。

このエラーと同時に起きやすい不具合

「重大なエラー」が出ている環境では、関連する不具合が同時に発生しているケースもあります。心当たりがある場合は、あわせて確認してください。

まとめ

「このサイトで重大なエラーが発生しました」は、WordPress内部で致命的エラーが発生しているサインです。まずは管理画面に入れるかどうかで切り分け、入れない場合はFTPでプラグイン/テーマを無効化、入れる場合はログ確認から原因箇所を特定するのが最短です。原因としては、プラグイン・テーマ不具合、PHPバージョン不一致、カスタムコードのミス、メモリ不足が代表的なので、順に切り分けて復旧を進めてください。