2026年5月20日

2026年5月20日

プラグインが原因の500エラーの解決方法と原因プラグインの特定手順

はじめに

プラグインのインストール・更新後に500エラーが発生した場合、そのプラグインがエラーの原因である可能性が高いです。管理画面にアクセスできなくてもFTP経由で対処でき、問題のプラグインを特定して無効化することで解決できます。

プラグインが原因と判断できる状況

  • 特定のプラグインを有効化した直後に500エラーが発生
  • プラグインの更新後にエラーが発生
  • 「PHP Fatal error: Cannot redeclare function」というエラーが出る
  • 「Call to undefined function」というエラーが出る

解決方法①:管理画面からプラグインを無効化(アクセスできる場合)

管理画面にアクセスできる場合は最も簡単です:

1. プラグインインストール済みプラグイン

2. 原因が分かっている場合は該当プラグインを「無効化」

3. 全て無効化する場合はチェックボックスで全選択 → 一括操作「無効化」

解決方法②:FTPで全プラグインを無効化(管理画面にアクセスできない場合)

FTPで wp-content/plugins/ フォルダをリネームします:

wp-content/plugins/ → wp-content/plugins_disabled/

これでWordPressはすべてのプラグインを認識しなくなります。サイトが復旧したらプラグインが原因です。

元に戻すには:

wp-content/plugins_disabled/ → wp-content/plugins/

原因プラグインの特定:二分探索法

プラグインが原因と分かったら、どのプラグインかを特定します。プラグインの数が多い場合は二分探索が効率的です:

例:10個のプラグインがある場合

1. 5個を無効化してサイトを確認

- 復旧 → 無効化した5個の中に原因がある

- まだエラー → 有効のまま残した5個の中に原因がある

2. 原因のある5個の中から 2〜3個を無効化して確認

3. 同様に繰り返し → 1個に絞り込む

FTPで個別プラグインを無効化するには:

wp-content/plugins/問題のプラグイン/ → wp-content/plugins/問題のプラグイン_disabled/

データベース経由での無効化(緊急時)

phpMyAdmin が使える場合、データベースから直接全プラグインを無効化できます:

-- wp_options テーブルで active_plugins の値を空にする
UPDATE wp_options SET option_value = 'a:0:{}' WHERE option_name = 'active_plugins';

テーブルプレフィックスが wp_ 以外の場合は置き換えてください。

原因プラグインが分かったら

1. アップデートを確認:最新バージョンで修正されている場合がある

2. サポートフォーラムを確認:同じ問題を報告しているユーザーの解決策を探す

3. 代替プラグインを探す:同機能の別プラグインへ乗り換え

4. プラグイン開発者に報告:WordPress.org のプラグインページからサポートフォーラムに投稿

注意事項

  • プラグインを削除(uninstall)するとデータが失われる場合があります。まずは「無効化」だけで試してください。
  • フォルダをリネームすると管理画面でも無効状態として認識されます。

まとめ

プラグインが原因の500エラーは、FTPでプラグインフォルダをリネームして全無効化→二分探索で原因プラグインを特定→アップデートまたは代替プラグインへ移行、という手順で解決します。

関連記事:

お気軽にご相談ください

お見積りへ お問い合わせへ