Docs: Clarify documentation for `wp_logout_url()` and `wp_login_url()` and corresponding hooks to highlight whether HTML-encoded or un-encoded values should be expected.
The return from `wp_logout_url()` is HTML-encoded due to its value passing through `wp_nonce_url()` and thus `esc_html()`. Adversely `wp_login_url()` passes through no such escaping and therefore should not be expected to return an HTML-encoded value. Props akibjorklund for the initial patch. Fixes #34352. git-svn-id: https://develop.svn.wordpress.org/trunk@37753 602fd350-edb4-49c9-b593-d223f7449a82
This commit is contained in:
parent
01bfb1342b
commit
ce565d2fb2
|
@ -289,14 +289,14 @@ function wp_loginout($redirect = '', $echo = true) {
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Returns the Log Out URL.
|
* Retrieves the logout URL.
|
||||||
*
|
*
|
||||||
* Returns the URL that allows the user to log out of the site.
|
* Returns the URL that allows the user to log out of the site.
|
||||||
*
|
*
|
||||||
* @since 2.7.0
|
* @since 2.7.0
|
||||||
*
|
*
|
||||||
* @param string $redirect Path to redirect to on logout.
|
* @param string $redirect Path to redirect to on logout.
|
||||||
* @return string A log out URL.
|
* @return string The logout URL. Note: HTML-encoded via esc_html() in wp_nonce_url().
|
||||||
*/
|
*/
|
||||||
function wp_logout_url($redirect = '') {
|
function wp_logout_url($redirect = '') {
|
||||||
$args = array( 'action' => 'logout' );
|
$args = array( 'action' => 'logout' );
|
||||||
|
@ -312,20 +312,21 @@ function wp_logout_url($redirect = '') {
|
||||||
*
|
*
|
||||||
* @since 2.8.0
|
* @since 2.8.0
|
||||||
*
|
*
|
||||||
* @param string $logout_url The Log Out URL.
|
* @param string $logout_url The HTML-encoded logout URL.
|
||||||
* @param string $redirect Path to redirect to on logout.
|
* @param string $redirect Path to redirect to on logout.
|
||||||
*/
|
*/
|
||||||
return apply_filters( 'logout_url', $logout_url, $redirect );
|
return apply_filters( 'logout_url', $logout_url, $redirect );
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Returns the URL that allows the user to log in to the site.
|
* Retrieves the login URL.
|
||||||
*
|
*
|
||||||
* @since 2.7.0
|
* @since 2.7.0
|
||||||
*
|
*
|
||||||
* @param string $redirect Path to redirect to on login.
|
* @param string $redirect Path to redirect to on log in.
|
||||||
* @param bool $force_reauth Whether to force reauthorization, even if a cookie is present. Default is false.
|
* @param bool $force_reauth Whether to force reauthorization, even if a cookie is present.
|
||||||
* @return string A log in URL.
|
* Default false.
|
||||||
|
* @return string The login URL. Not HTML-encoded.
|
||||||
*/
|
*/
|
||||||
function wp_login_url($redirect = '', $force_reauth = false) {
|
function wp_login_url($redirect = '', $force_reauth = false) {
|
||||||
$login_url = site_url('wp-login.php', 'login');
|
$login_url = site_url('wp-login.php', 'login');
|
||||||
|
@ -342,7 +343,7 @@ function wp_login_url($redirect = '', $force_reauth = false) {
|
||||||
* @since 2.8.0
|
* @since 2.8.0
|
||||||
* @since 4.2.0 The `$force_reauth` parameter was added.
|
* @since 4.2.0 The `$force_reauth` parameter was added.
|
||||||
*
|
*
|
||||||
* @param string $login_url The login URL.
|
* @param string $login_url The login URL. Not HTML-encoded.
|
||||||
* @param string $redirect The path to redirect to on login, if supplied.
|
* @param string $redirect The path to redirect to on login, if supplied.
|
||||||
* @param bool $force_reauth Whether to force reauthorization, even if a cookie is present.
|
* @param bool $force_reauth Whether to force reauthorization, even if a cookie is present.
|
||||||
*/
|
*/
|
||||||
|
|
Loading…
Reference in New Issue