wp_send_json_error()


WordPressのwp_send_json_error()関数は、JSON形式でエラーレスポンスを返すために使用されます。主にAJAXリクエストの処理中にエラーが発生した場合に利用されます。

構文

wp_send_json_error( $data = null, $status_code = null );

引数の説明:

  • $data (array|object|null) — エラーレスポンスとして返す追加データ。デフォルトはnull。
  • $status_code (int|null) — HTTPステータスコード。デフォルトはnull。

例1: シンプルなエラーレスポンス

AJAXリクエストが失敗した場合、シンプルなエラーメッセージを返します。

wp_send_json_error( array( 'message' => 'エラーが発生しました。' ) );

例2: カスタムHTTPステータスコード

エラーレスポンスと共にHTTPステータスコードを指定します。

wp_send_json_error( array( 'message' => 'ページが見つかりません。' ), 404 );

例3: データ付きエラーレスポンス

エラーレスポンスに追加データを含めます。

wp_send_json_error( array( 'error' => 'invalid_input', 'details' => '入力が無効です。' ) );

例4: 空のエラーレスポンス

追加データなしでエラーレスポンスを返します。

wp_send_json_error();

例5: オブジェクト形式のデータ

オブジェクト形式でエラーレスポンスを返します。

wp_send_json_error( (object) array( 'error' => 'access_denied', 'message' => 'アクセスが拒否されました。' ) );

例6: カスタムエラーメッセージ

カスタムエラーメッセージを返します。

wp_send_json_error( array( 'message' => 'カスタムエラーメッセージです。' ) );

例7: 複数のエラーデータ

複数のエラーデータを返します。

wp_send_json_error( array( 'errors' => array( '入力エラー', 'フォーマットエラー' ) ) );

例8: ステータスコードとデータ

HTTPステータスコードとデータを一緒に返します。

wp_send_json_error( array( 'message' => 'サーバーエラーが発生しました。' ), 500 );

注意点

  • wp_send_json_error()を呼び出すと、スクリプトの実行が終了します。そのため、関数の後にコードを書いても実行されません。
  • AJAXリクエストを処理する際は、適切な権限チェックを行ってください。

関連機能: