我正在为我的一个客户建立一个网站,他们希望在他们的网站中添加如下功能:
当人们点击下载链接时,会出现一个表格(联系表格 7),访客输入详细信息后,它将重定向到下载链接。
通过对联系表单 7 使用以下附加设置,我可以在表单提交后重定向到新页面。
on_sent_ok: "location = 'http://example.com/';"
但是,它们有 10 个文件,我需要更改重定向链接 10 次才能触发相应文件的下载。我可以使用 10 张联系表来完成,但这会很脏。
有什么方法可以动态更改重定向 URL?
例如,
http://example.com/?id=1
http://example.com/?id=2
<?php
$id = $_GET['id'];
$url= "http://example.com/id=?". $id;
?>
有没有办法用 $url 更改以下位置?
on_sent_ok: "location = 'http://example.com/';"
我找到了一种动态更改重定向 URL 的方法。我按照以下步骤来实现动态重定向:
-
在联系表 7 的附加设置中输入以下内容:
on_sent_ok: '重定向();'
-
我们需要一个隐藏字段来携带一条必要的信息。但是,默认情况下,联系表单 7 不允许我们创建隐藏字段。开发人员 SevenSpark 开发了一个扩展,允许在联系表单 7 中隐藏字段。http://wordpress.org/extend/plugins/contact-form-7-dynamic-text-extension/ http://wordpress.org/extend/plugins/contact-form-7-dynamic-text-extension/请下载插件并安装。您将看到为联系表单 7 生成了两个新标签。这将允许您从 $_GET 变量中获取值。请检查插件页面的详细信息。
ex. http://example.com/?foo= http://example.com/?foo="bar"
创建模板页面或退出页面模板即可。
将模板分配到适当的页面。如果您想使用默认模板,则无需创建或分配任何模板。
在编辑器中打开您的模板文件。
-
粘贴以下代码:
<script>
function redirect() {
// your hidden field ID
var filename = document.getElementById('redFilename').value;
var url ='';
//alert(document.getElementById('redFilename').value);
if (filename == 'apple')
{
url= 'http://example.com/thankyou/';
}
else if (filename == 'orange')
{
url= 'http://example.com/thankyou_orange/';
}
window.location = url;
}
</script>
-
现在使用 GET 参数浏览链接。
ex. http://example.com/?redFilename= http://example.com/?redFilename="apple"
联系表单 7 的隐藏字段将捕获 redFilename 值。如果表单提交成功,它将重定向到http://example.com/thankyou_orange/ http://example.com/thankyou_orange/ page
享受!!!!
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)