auth_redirect()
auth_redirect() 检查用户是否已登录,如果未登录,则将其重定向到登录页。Checks if a …
auth_redirect()
检查用户是否已登录,如果未登录,则将其重定向到登录页。
Checks if a user is logged in, if not it redirects them to the login page.
目录锚点:#说明#返回#源码#笔记
说明(Description)
当从页面调用此代码时,它将检查查看页面的用户是否已登录。如果用户未登录,则会将其重定向到登录页。用户被重定向到这样一种方式,即在登录时,他们将被直接发送到他们最初试图访问的页面。
返回(Return)
无返回值
源码(Source)
/** * Checks if a user is logged in, if not it redirects them to the login page. * * @since 1.5.0 */ function auth_redirect() { // Checks if a user is logged in, if not redirects them to the login page $secure = ( is_ssl() || force_ssl_admin() ); /** * Filter whether to use a secure authentication redirect. * * @since 3.1.0 * * @param bool $secure Whether to use a secure authentication redirect. Default false. */ $secure = apply_filters( 'secure_auth_redirect', $secure ); // If https is required and request is http, redirect if ( $secure && !is_ssl() && false !== strpos($_SERVER['REQUEST_URI'], 'wp-admin') ) { if ( 0 === strpos( $_SERVER['REQUEST_URI'], 'http' ) ) { wp_redirect( set_url_scheme( $_SERVER['REQUEST_URI'], 'https' ) ); exit(); } else { wp_redirect( 'https://' . $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI'] ); exit(); } } if ( is_user_admin() ) { $scheme = 'logged_in'; } else { /** * Filter the authentication redirect scheme. * * @since 2.9.0 * * @param string $scheme Authentication redirect scheme. Default empty. */ $scheme = apply_filters( 'auth_redirect_scheme', '' ); } if ( $user_id = wp_validate_auth_cookie( '', $scheme) ) { /** * Fires before the authentication redirect. * * @since 2.8.0 * * @param int $user_id User ID. */ do_action( 'auth_redirect', $user_id ); // If the user wants ssl but the session is not ssl, redirect. if ( !$secure && get_user_option('use_ssl', $user_id) && false !== strpos($_SERVER['REQUEST_URI'], 'wp-admin') ) { if ( 0 === strpos( $_SERVER['REQUEST_URI'], 'http' ) ) { wp_redirect( set_url_scheme( $_SERVER['REQUEST_URI'], 'https' ) ); exit(); } else { wp_redirect( 'https://' . $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI'] ); exit(); } } return; // The cookie is good so we're done } // The cookie is no good so force login nocache_headers(); $redirect = ( strpos( $_SERVER['REQUEST_URI'], '/options.php' ) && wp_get_referer() ) ? wp_get_referer() : set_url_scheme( 'http://' . $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI'] ); $login_url = wp_login_url($redirect, true); wp_redirect($login_url); exit(); } endif; if ( !function_exists('check_admin_referer') ) :
更新版本 | 源码位置 | 使用 | 被使用 |
---|---|---|---|
1.5.0 | wp-includes/pluggable.php:1030 | 1 function | 14 |
笔记(Notes)
需要用户登录才能查看页面:
类别:WordPress 函数手册、
本文收集自互联网,转载请注明来源。
如有侵权,请联系 wper_net@163.com 删除。
还没有任何评论,赶紧来占个楼吧!