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_plugins を a:0:{} に更新すると全プラグインを無効化できます。管理画面にアクセスできるようになったら、必要なプラグインを1つずつ有効化して原因を特定してください。