wp_logout()WP 2.5.0

Выходит из системы. Де-авторизует пользователя: разрушает текущий сеанс и очищает куки авторизации.

Если нужно наоборот авторизовать пользователя, используйте wp_signon().

Pluggable функция — эту функцию можно заменить из плагина. Это значит, что она будет работать (подключается) только после подключения всех плагинов, а до этого момента функция еще не определена... Поэтому нельзя вызывать эту и зависящие от неё функции прямо из кода плагина. Их нужно вызывать через хук plugins_loaded или позднее, например хук init.

Замена функции (переопределение) — в must-use или обычном плагине можно создать функцию с таким же названием, тогда она заменит текущую функцию.

Работает на основе: wp_destroy_current_session(), wp_clear_auth_cookie()
Хуки из функции

Возвращает

null. Ничего не возвращает.

Использование

<?php wp_logout(); ?>

Примеры

0

#1 Организуем выход из WordPress по событию

Допустим нам нужно выйти из системы, если в адресной строке указан параметр запроса logout:

if( isset( $_GET['logout'] ) )
	wp_logout();

Никогда не используйте ее отдельно от оператора IF!

Не используйте такой код в кнопке или ссылке - wp_logout() всегда должен быть обернут в условие if. Иначе пользователь просто будет автоматически выходить из системы.

wp_logout()

Список изменений

С версии 2.5.0 Введена.

Код wp_logout() WP 6.5.2

function wp_logout() {
	$user_id = get_current_user_id();

	wp_destroy_current_session();
	wp_clear_auth_cookie();
	wp_set_current_user( 0 );

	/**
	 * Fires after a user is logged out.
	 *
	 * @since 1.5.0
	 * @since 5.5.0 Added the `$user_id` parameter.
	 *
	 * @param int $user_id ID of the user that was logged out.
	 */
	do_action( 'wp_logout', $user_id );
}