1

我目前在 Wordpress 上运行了一个站点,并安装了 Wishlist Member 插件来控制站点的会员功能。目前,如果非会员试图访问需要会员资格的页面,他们将被重定向到带有“注册”的页面,注册用户可以通过标题中的登录表单登录任何页面并被定向到带有 slug 'member-dashboard' 的页面。

我希望实现的目标(插件无法让我这样做)是让登录的用户有机会直接返回他们在登录前查看的页面(这将通过页面“成员仪表板”)。但是,我需要能够考虑到它们是否已被注册页面引用并有效地将它们返回 2 页。我还需要考虑他们是否无法正确登录。

我通过网络搜索查看了一些解决方案,但这些都不是很有效。这是我到目前为止所拥有的(请善待 - 我知道这是垃圾)

<?php if (strstr( $_SERVER['HTTP_REFERER'],"www.mydomain.co.uk/sign-up/" ) && is_page(9)) { ?>
<a href="#" onclick="window.history.go(-2);">Go back 2 pages as referred by 'sign-up'</a>
<? } elseif (is_page(9)) { ?>
<?php
$url = htmlspecialchars($_SERVER['HTTP_REFERER']);
echo "<a href='$url'>Go back 1 page as referred by another page</a>"; 
?>
<? } ?>

我很清楚这是胡说八道,我不应该使用 Java 解决方案(这不会保留用户在返回第 2 页时已登录的事实)或 HTTP_REFERER(并且 PHP 需要也很整洁),但它应该证明我至少在实现之后是什么。此代码位于 Wordpress 的 page.php 中,因为插件的代码已加密,因此我无法使用它。

我猜我应该设置某种会话变量,以便最好地完成我在这种情况下需要做的事情,但我必须说实话 - 我没有设法挖掘出任何似乎有帮助的东西我在这方面。有人能至少指出我正确的方向吗?将不胜感激:)

4

0 回答 0