функция
since 3.5.0
wp_send_json()
Проверено на WordPress 6.9, обновлено Источник: WordPress Developer Resources.
Сигнатура
wp_send_json( mixed $response, int $status_code = null, int $flags )
Описание
Отправляет JSON-ответ на Ajax-запрос.
Параметры
$response
mixed
обязательный
Переменная (обычно массив или объект) для кодирования в JSON, последующего вывода и завершения.
$status_code
int
необязательный
= null
Код состояния HTTP для вывода.
$flags
int
необязательный
Опции, передаваемые в json_encode(). Значение по умолчанию 0.
Исходный код
wp-includes/functions.php:4540
function wp_send_json( $response, $status_code = null, $flags = 0 ) {
if ( wp_is_serving_rest_request() ) {
_doing_it_wrong(
__FUNCTION__,
sprintf(
/* translators: 1: WP_REST_Response, 2: WP_Error */
__( 'Return a %1$s or %2$s object from your callback when using the REST API.' ),
'WP_REST_Response',
'WP_Error'
),
'5.5.0'
);
}
if ( ! headers_sent() ) {
header( 'Content-Type: application/json; charset=' . get_option( 'blog_charset' ) );
if ( null !== $status_code ) {
status_header( $status_code );
}
}
echo wp_json_encode( $response, $flags );
if ( wp_doing_ajax() ) {
wp_die(
'',
'',
array(
'response' => null,
)
);
} else {
die;
}
}
История изменений
| Версия | Описание |
|---|---|
| 5.6.0 | The $flags parameter was added. |
| 4.7.0 | The $status_code parameter was added. |
| 3.5.0 | Introduced. |

