2026年5月20日

2026年5月20日

WordPressプラグインをデータベースから無効化する方法

はじめに

FTPもSSHもWP-CLIも使えない状況でプラグインが原因の障害が発生した場合、phpMyAdminから直接データベースを編集してプラグインを無効化できます。最終手段として知っておくと緊急時に役立ちます。

解決手順

ステップ1:phpMyAdminにアクセスする

ほとんどのレンタルサーバーのコントロールパネルにphpMyAdminへのリンクがあります。

  • さくらインターネット:コントロールパネル → データベース → phpMyAdmin
  • エックスサーバー:サーバーパネル → データベース → phpMyAdmin
  • ConoHa WING:コントロールパネル → データベース → phpMyAdmin

ステップ2:active_pluginsオプションを確認する

-- wp_options テーブルの active_plugins を確認
SELECT option_value FROM wp_options WHERE option_name = 'active_plugins';

結果は PHP シリアライズ形式で表示されます:

a:3:{i:0;s:19:"akismet/akismet.php";i:1;s:37:"contact-form-7/wp-contact-form-7.php";i:2;s:35:"problematic-plugin/main-plugin.php";}

ステップ3:特定プラグインを無効化する

-- 全プラグインを一括無効化(最も安全な緊急対応)
UPDATE wp_options
SET option_value = 'a:0:{}'
WHERE option_name = 'active_plugins';

特定プラグインのみを削除する場合は、シリアライズ文字列を手動で編集します:

-- problematic-plugin だけを取り除いた値に更新
-- 元: a:3:{i:0;s:19:"akismet/akismet.php";i:1;s:37:"contact-form-7/wp-contact-form-7.php";i:2;s:35:"problematic-plugin/main-plugin.php";}
-- 修正後: a:2:{i:0;s:19:"akismet/akismet.php";i:1;s:37:"contact-form-7/wp-contact-form-7.php";}
UPDATE wp_options
SET option_value = 'a:2:{i:0;s:19:"akismet/akismet.php";i:1;s:37:"contact-form-7/wp-contact-form-7.php";}'
WHERE option_name = 'active_plugins';

ステップ4:MySQLコマンドラインから操作する

# MySQLに接続(wp-config.phpからDB情報を確認)
mysql -u wp_user -p wp_database

# active_plugins を確認
SELECT option_value FROM wp_options WHERE option_name = 'active_plugins'\G

# 全プラグインを無効化
UPDATE wp_options SET option_value = 'a:0:{}' WHERE option_name = 'active_plugins';

# 変更を確認
SELECT option_value FROM wp_options WHERE option_name = 'active_plugins';

ステップ5:マルチサイトの場合

-- マルチサイトではネットワーク全体の有効プラグインも確認
SELECT meta_value FROM wp_sitemeta WHERE meta_key = 'active_sitewide_plugins';

-- ネットワーク全体の有効プラグインを無効化
UPDATE wp_sitemeta SET meta_value = 'a:0:{}' WHERE meta_key = 'active_sitewide_plugins';

注意事項

  • データベースを直接編集する前に必ずバックアップを取得してください(phpMyAdmin → エクスポートから)
  • シリアライズ文字列の a:3 の数字はプラグインの個数を示します。プラグインを1つ削除したら a:2 に変更する必要があります
  • 編集ミスがあるとWordPressが起動しなくなる場合があります。不安な場合は全プラグインを無効化する方法(a:0:{})を使ってください

まとめ

データベースから直接 active_pluginsa:0:{} に更新すると全プラグインを無効化できます。管理画面にアクセスできるようになったら、必要なプラグインを1つずつ有効化して原因を特定してください。

お気軽にご相談ください

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