# wp_authenticate_cookie()

URL: https://chugunov.pro/api-wordpress/functions/wp_authenticate_cookie/
Проверено на WordPress 6.9, обновлено 06.08.2026.
Источник: независимый русскоязычный справочник chugunov.pro. Не является официальной документацией WordPress.

Тип: функция.
Появился в версии: 2.8.0.

## Сигнатура

```php
wp_authenticate_cookie( WP_User|WP_Error|null $user, string $username, string $password ): WP_User|WP_Error
```

## Описание

Аутентифицирует пользователя с помощью cookie авторизации WordPress.

## Параметры

- `$user` `WP_User|WP_Error|null` — обязательный. Объект WP_User или WP_Error из предыдущей функции обратного вызова. Значение по умолчанию null.
- `$username` `string` — обязательный. Имя пользователя. Если не пустое, отменяет аутентификацию по cookie.
- `$password` `string` — обязательный. Пароль. Если не пустой, отменяет аутентификацию по cookie.

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

`WP_User|WP_Error` — WP_User WP_Error

## Исходный код

Файл: `wp-includes/user.php:326`

```php
function wp_authenticate_cookie(
	$user,
	$username,
	#[\SensitiveParameter]
	$password
) {
	global $auth_secure_cookie;

	if ( $user instanceof WP_User ) {
		return $user;
	}

	if ( empty( $username ) && empty( $password ) ) {
		$user_id = wp_validate_auth_cookie();
		if ( $user_id ) {
			return new WP_User( $user_id );
		}

		if ( $auth_secure_cookie ) {
			$auth_cookie = SECURE_AUTH_COOKIE;
		} else {
			$auth_cookie = AUTH_COOKIE;
		}

		if ( ! empty( $_COOKIE[ $auth_cookie ] ) ) {
			return new WP_Error( 'expired_session', __( 'Please log in again.' ) );
		}

		// If the cookie is not set, be silent.
	}

	return $user;
}
```

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

- 2.8.0 — Introduced.

## Связанные

Использует: `WP_User::__construct`, [`wp_validate_auth_cookie`](https://chugunov.pro/api-wordpress/functions/wp_validate_auth_cookie/), [`__`](https://chugunov.pro/api-wordpress/functions/__/), `WP_Error::__construct`.

Оригинал в официальной документации: https://developer.wordpress.org/reference/functions/wp_authenticate_cookie/
