我正在使用一个带有插件“SplashScreen”的静态挤压页面的WordPress网站。
用户可以从两个选项中进行选择:
A。)在表单中输入他们的电子邮件地址以进入该站点。
B。)点击字段下方的链接,允许他们绕过发送电子邮件。
目前,用户在收到电子邮件时会被带到感谢页面,然后他们可以点击链接进入主页。或者,如果他们点击旁路链接,他们会直接进入主页。但是,如果他们直接来到网站,这只会很好。如果他们从直接链接到特定帖子或页面进入网站,他们将不会被带回他们原本打算查看的页面。
我要做的是在填写表格或点击旁路链接时将它们直接带到目标页面。我到处寻找这个,我能找到的是有关如何在登录后将用户重定向回目标页面的信息。我知道如何做到这一点,这有点复杂。
挤压页面是一个简单的静态HTML页面,它使用Javascript设置cookie,因此页面只出现一次:
function setCookie(name, value, expires, path, domain, secure) {
document.cookie = name + "=" + escape(value) +
((expires) ? "; expires=" + expires.toGMTString() : "") +
((path) ? "; path=" + path : "") +
((domain) ? "; domain=" + domain : "") +
((secure) ? "; secure" : "");
}
function setsplash() {
var exp = new Date();
var expDays = 365;
exp.setTime(exp.getTime() + (expDays * 24 * 60 * 60 * 1000));
setCookie("splash", "1", exp, "/");
}
和
<input class="sub-btn-join" type="submit" value="" onclick="setsplash()">
我愿意使用任何作品,但Javascript或jQuery是理想的。希望你们其中一个可以帮助我解决这个问题。我浪费了很多时间。
答案 0 :(得分:1)
您可以分三步完成:
http://$_SERVER["SERVER_NAME"].$_SERVER["REQUEST_URI"];
或JavaScript(document.URL
)获取请求的网址。如果最初尝试的URL不是home / splash页面,请再次使用PHP重定向到它。
<?php
header( 'Location: http://www.example.com/the_page_we_first_wanted.html' ) ;
?>
答案 1 :(得分:0)
虽然我没有在您的问题中看到代码,这会将用户重定向到某个地方,但可以通过发送带有新位置的重定向标头将其重定向到正确的页面。可以从$ _SERVER ['HTTP_HOST']和$ _SERVER ['REQUEST_URI']中读取原始位置。这些应该放在重定向的链接/目标页面上,这可能意味着你必须编辑SplashScreen-Plugin来发送它:
header('Location: '.$_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI']);
请记住,当某些其他内容已经发送时,不会发送标题。