wp_ajax_toggle_auto_updates()


WordPressのwp_ajax_toggle_auto_updates()関数は、プラグインやテーマの自動更新を切り替えるためのAJAXハンドラーです。

構文

wp_ajax_toggle_auto_updates( string $type, string $slug, string $state );

引数の説明:

  • $type (string) — 自動更新を切り替える対象のタイプ(’plugin’ または ‘theme’)
  • $slug (string) — プラグインまたはテーマのスラッグ
  • $state (string) — 更新状態(’enable’ または ‘disable’)

例1: プラグインの自動更新を有効化

Akismetプラグインの自動更新を有効にする例です。

wp_ajax_toggle_auto_updates( 'plugin', 'akismet', 'enable' );

例2: テーマの自動更新を無効化

Twenty Twentyテーマの自動更新を無効にする例です。

wp_ajax_toggle_auto_updates( 'theme', 'twentytwenty', 'disable' );

例3: 現在有効化されているプラグインの自動更新設定

現在アクティブなプラグインの自動更新を切り替える例です。

$plugin = get_option('active_plugins')[0]; wp_ajax_toggle_auto_updates( 'plugin', $plugin, 'enable' );

例4: 親テーマの自動更新を制御

親テーマの自動更新を有効化する例です。

$theme = get_template(); wp_ajax_toggle_auto_updates( 'theme', $theme, 'enable' );

例5: 複数プラグインの一括設定

複数プラグインの自動更新を一度に有効化する例です。

foreach(['akismet','woocommerce'] as $plugin) { wp_ajax_toggle_auto_updates( 'plugin', $plugin, 'enable' ); }

例6: 条件付きで自動更新を設定

特定の条件下でのみ自動更新を有効化する例です。

if(is_admin()) { wp_ajax_toggle_auto_updates( 'plugin', 'jetpack', 'enable' ); }

例7: フックを使用した自動更新制御

フック経由で自動更新を制御する例です。

add_action('admin_init', function() { wp_ajax_toggle_auto_updates( 'theme', 'storefront', 'disable' ); });

注意事項

  • この関数は管理者権限が必要です
  • 直接呼び出すのではなく、AJAXリクエスト経由で使用します
  • 本番環境では注意して使用してください

関連機能: