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


(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

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.