wordpress判断是否是登录页面函数

重要:本文最后更新于2022-12-10 08:49:33,某些文章具有时效性,若有错误或已失效,请在下方留言或联系九月网

wordpress6.1新增了一个用于判断页面是否是登录页的函数 is_login() ,这个函数其实是建立在wp_login_url这个函数上的,下面一起来看看这两个wordpress函数。

is_login()

确定当前页是否是登录页,是返回true,不是返回false。

函数原型

function is_login() {
	return false !== stripos( wp_login_url(), $_SERVER['SCRIPT_NAME'] );
}

wp_login_url

wp_login_url( string $redirect = ”, bool $force_reauth = false )

生成登录页地址

参数

$redirect :可选,登录后的重定向路径(绝对路径)。默认空“”

$force_reauth 可选,是否强制重新授权,即使存在 cookie。默认 false

返回值

返回登录url

$redirect 参数 必须 是绝对的,例如 https://www.daimadog.com/dmd。为获得最佳结果,请使用 site_url( ‘/dmd’ )。

函数原型

function wp_login_url( $redirect = '', $force_reauth = false ) {
	$login_url = site_url( 'wp-login.php', 'login' );

	if ( ! empty( $redirect ) ) {
		$login_url = add_query_arg( 'redirect_to', urlencode( $redirect ), $login_url );
	}

	if ( $force_reauth ) {
		$login_url = add_query_arg( 'reauth', '1', $login_url );
	}

	/**
	 * Filters the login URL.
	 *
	 * @since 2.8.0
	 * @since 4.2.0 The `$force_reauth` parameter was added.
	 *
	 * @param string $login_url    The login URL. Not HTML-encoded.
	 * @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.
	 */
	return apply_filters( 'login_url', $login_url, $redirect, $force_reauth );
}

简单使用

登录并重定向到当前页

" alt="">
	

对于通过上面的当前 URL 的重定向示例get_permalink(),请注意如果请求是 404,get_permalink()将返回false,因此您可能想要获取实际的 URL。

即使当前 URL 是 404,仍然重定向到您当前的 URL 仍然有用的场景是,如果当前 URL 是私人帖子,并且您的用户尚未登录 – 因此最终出现 404。

在这种情况下,如果您向他们显示登录链接,他们应该被重定向回当前 URL(即私人帖子),以便他们最终可以访问它。

request ) ); ?>
">

登录并重定向到主页

" alt="">
	

给TA打赏
共{{data.count}}人
人已打赏
WordPress

记录WordPress出现的/1重定向问题解决办法

2022-11-22 0:00:00

WordPress

wordpress建站详细过程,从零开始的保姆级教程

2023-1-15 8:50:37

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索