wp_logout_url( string $redirect = '' )

Retrieves the logout URL.


Description Description

Returns the URL that allows the user to log out of the site.


Parameters Parameters

$redirect

(string) (Optional) Path to redirect to on logout.

Default value: ''


Top ↑

Return Return

(string) The logout URL. Note: HTML-encoded via esc_html() in wp_nonce_url().


Top ↑

Source Source

File: wp-includes/general-template.php

function wp_logout_url( $redirect = '' ) {
	$args = array();
	if ( ! empty( $redirect ) ) {
		$args['redirect_to'] = urlencode( $redirect );
	}

	$logout_url = add_query_arg( $args, site_url( 'wp-login.php?action=logout', 'login' ) );
	$logout_url = wp_nonce_url( $logout_url, 'log-out' );

	/**
	 * Filters the logout URL.
	 *
	 * @since 2.8.0
	 *
	 * @param string $logout_url The HTML-encoded logout URL.
	 * @param string $redirect   Path to redirect to on logout.
	 */
	return apply_filters( 'logout_url', $logout_url, $redirect );
}

Top ↑

Changelog Changelog

Changelog
Version Description
2.7.0 Introduced.


Top ↑

User Contributed Notes User Contributed Notes

  1. Skip to note 3 content
    Contributed by Codex

    This example shows how to logout and redirect to another site. If you are using wp_logout_url to redirect to another site on logout (e.g. another subsite in a MultiSite network) you’ll need to make use of the allowed_redirect_hosts filter.

    add_filter( 'allowed_redirect_hosts', 'wpdocs_allow_ms_parent_redirect' );
    
    /**
     * Add host to redirection whitelist.
     * @param  array $allowed Redirection allowed hosts.
     * @return array          Extended redirection allowed hosts.
     */
    function wpdocs_allow_ms_parent_redirect( $allowed ) {
    	$allowed[] = 'multisiteparent.com';
    	return $allowed;
    }
    
    <a href="<?php echo wp_logout_url( 'http://multisiteparent.com' ); ?>">Logout</a>
    

You must log in before being able to contribute a note or feedback.