функция since 2.0.3

check_ajax_referer()

Проверено на WordPress 6.9, обновлено Источник: WordPress Developer Resources.

Сигнатура

check_ajax_referer( int|string $action = -1, false|string $query_arg = false, bool $stop = true ): int|false

Описание

Проверяет Ajax-запрос, чтобы предотвратить обработку запросов извне блога.

Параметры

$action int|string необязательный = -1
Одноразовый код действия.
$query_arg false|string необязательный = false
Ключ для проверки одноразового кода в $_REQUEST (с версии 2.5). Если false, то для '_ajax_nonce' и '_wpnonce' будут проверены значения $_REQUEST (в этом порядке).
$stop bool необязательный = true
Останавливать ли выполнение сразу, если одноразовый код не удаётся проверить.

Возвращаемое значение

int|false

Исходный код

wp-includes/pluggable.php:1417

function check_ajax_referer( $action = -1, $query_arg = false, $stop = true ) {
	if ( -1 === $action ) {
		_doing_it_wrong( __FUNCTION__, __( 'You should specify an action to be verified by using the first parameter.' ), '4.7.0' );
	}

	$nonce = '';

	if ( $query_arg && isset( $_REQUEST[ $query_arg ] ) ) {
		$nonce = $_REQUEST[ $query_arg ];
	} elseif ( isset( $_REQUEST['_ajax_nonce'] ) ) {
		$nonce = $_REQUEST['_ajax_nonce'];
	} elseif ( isset( $_REQUEST['_wpnonce'] ) ) {
		$nonce = $_REQUEST['_wpnonce'];
	}

	$result = wp_verify_nonce( $nonce, $action );

	/**
	 * Fires once the Ajax request has been validated or not.
	 *
	 * @since 2.1.0
	 *
	 * @param string    $action The Ajax nonce action.
	 * @param false|int $result False if the nonce is invalid, 1 if the nonce is valid and generated between
	 *                          0-12 hours ago, 2 if the nonce is valid and generated between 12-24 hours ago.
	 */
	do_action( 'check_ajax_referer', $action, $result );

	if ( $stop && false === $result ) {
		if ( wp_doing_ajax() ) {
			wp_die( -1, 403 );
		} else {
			die( '-1' );
		}
	}

	return $result;
}

История изменений

ВерсияОписание
2.0.3 Introduced.

Что будем искать? Например,Продвижение

Этот сайт использует куки-файлы. Оставаясь на сайте, Вы соглашаетесь на их использование. Для получения дополнительной информации, пожалуйста, ознакомьтесь с политикой в отношении персональных данных.