参数
- $redirect
-
(string) (可选) 登录时重定向到的路径。
默认值: ''
- $force_reauth
-
(bool) (可选) 是否强制重新授权,即使存在cookie。
默认值: false
返回
(string) 登录的URL。没有HTML编码。
说明
$redirect 参数必须是绝对地址,例如http://example.com/mypage/。为了获得最佳效果,请使用 site_url( ‘/mypage/ ‘ )。
源码
更新日志
版本 | 描述 |
---|---|
2.7.0 | 开始引入 |
使用示例
登录并重定向到当前页面
<a href="<?php echo esc_url( wp_login_url( get_permalink() ) ); ?>" alt="<?php esc_attr_e( 'Login', 'textdomain' ); ?>"> <?php _e( 'Login', 'textdomain' ); ?> </a>
对于上面的示例,通过
get_permalink()
重定向到当前URL,请注意,如果请求是404,则get_permalink()
将返回false
,因此您可能希望获取实际的URL。如果当前URL是私密文章,并且您的用户尚未登录,那么即使它是404,仍然可以重定向到您的当前URL,这可能会很有用,因此最终会出现404。
在这种情况下,如果您向他们显示登录链接,他们应该被重定向回当前URL(即私密文章),以便他们最终可以访问它。
<?php $current_url = home_url( add_query_arg( [], $GLOBALS['wp']->request ) ); ?> <a href="<?php echo esc_url( wp_login_url( $current_url ) ); ?>"><?php _e( 'Log in' ) ?></a>
基本示例
<a href="<?php echo esc_url( wp_login_url() ); ?>" alt="<?php esc_attr_e( 'Login', 'textdomain' ); ?>"> <?php _e( 'Login', 'textdomain' ); </a>
登录并重定向到主页
<a href="<?php echo esc_url( wp_login_url( home_url() ) ); ?>" alt="<?php esc_attr_e( 'Login', 'textdomain' ); ?>"> <?php _e( 'Login', 'textdomain' ); ?> </a>