提问人:BadScooter1980 提问时间:10/8/2023 最后编辑:Ere MännistöBadScooter1980 更新时间:10/16/2023 访问量:38
重定向页面(如果未引用)
Redirect Page If Not Referred
问:
任何人都可以帮助解决WordPress中简单的重定向问题吗?
我有几个页面是注册过程的一部分,我想“隐藏”这些页面,除非作为该过程的一部分访问。
例如,除非访问者来自“/join/”页面,否则“/join/payment-setup/”页面需要无法访问 - 只需简单地重定向到“/join/”页面就足够了。
答:
1赞
Ere Männistö
10/8/2023
#1
我不是 WordPress 专家,但通过快速浏览文档,我可能会混合使用 、 和 .sessions
wp_get_referer()
wp_redirect()
- 在页面顶部开始会话
session_start()
- 检查它是否与页面匹配。如果是这样,请保存一些会话状态以备后用。这应该在每个页面上进行检查,以确保它也被重置。请注意,使用此设置时,如果用户刷新页面中的页面,他们将失去访问权限。因此,您必须添加一些逻辑来处理这个问题。
wp_get_referer
/join/
payment-setup
if (wp_get_referer() === home_url('/join/')) {
$_SESSION['allowed'] = true;
}
else {
$_SESSION['allowed'] = false;
}
- 在“要控制访问”中,检查是否允许用户访问该访问,类似于在用户登录之前阻止访问。如果用户没有来自正确的页面,请使用代码将他们重定向到正确的页面并退出代码。
page
wp-redirect
if (!isset($_SESSION['allowed']) || !$_SESSION['allowed']) {
wp_redirect(home_url('/join/'));
exit;
}
上一个:没有这样的文件或目录
评论