wp_doing_ajax()


WordPressのwp_doing_ajax()関数は、現在のリクエストがAJAXリクエストであるかどうかを判定するために使用されます。この関数は、AJAX処理中に特定のコードを実行するかどうかを制御する際に役立ちます。

構文

wp_doing_ajax();
  • bool — 現在のリクエストがAJAXリクエストであればtrue、そうでなければfalseを返します。

例1: AJAXリクエスト中の処理

AJAXリクエスト中にのみ特定のコードを実行する例です。

if ( wp_doing_ajax() ) { echo 'これはAJAXリクエストです。'; }

例2: AJAXリクエストでない場合の処理

AJAXリクエストでない場合にのみコードを実行する例です。

if ( !wp_doing_ajax() ) { echo 'これはAJAXリクエストではありません。'; }

例3: AJAXリクエスト中のフック追加

AJAXリクエスト中にフックを追加する例です。

if ( wp_doing_ajax() ) { add_action( 'wp_ajax_my_action', 'my_callback_function' ); }

例4: AJAXリクエスト中のスクリプト読み込み

AJAXリクエスト中に特定のスクリプトを読み込む例です。

if ( wp_doing_ajax() ) { wp_enqueue_script( 'my-script', 'path/to/script.js' ); }

例5: AJAXリクエスト中のスタイル読み込み

AJAXリクエスト中に特定のスタイルを読み込む例です。

if ( wp_doing_ajax() ) { wp_enqueue_style( 'my-style', 'path/to/style.css' ); }

例6: AJAXリクエスト中のリダイレクト防止

AJAXリクエスト中にリダイレクトを防止する例です。

if ( wp_doing_ajax() ) { remove_action( 'template_redirect', 'wp_redirect' ); }

例7: AJAXリクエスト中のキャッシュ無効化

AJAXリクエスト中にキャッシュを無効化する例です。

if ( wp_doing_ajax() ) { define( 'DONOTCACHEPAGE', true ); }

例8: AJAXリクエスト中のログ出力

AJAXリクエスト中にログを出力する例です。

if ( wp_doing_ajax() ) { error_log( 'AJAXリクエストが実行されました。' ); }

注意点:

  • wp_doing_ajax()は、WordPressのAJAX処理中にのみ使用されるべきです。他のコンテキストでは予期しない動作が発生する可能性があります。
  • この関数は、DOING_AJAX定数をチェックするため、AJAXリクエスト以外の状況では使用しないでください。

関連機能: