转发 URL 参数的链接
Posted
技术标签:
【中文标题】转发 URL 参数的链接【英文标题】:Link that forwards the URL's parameters 【发布时间】:2020-07-18 13:27:03 【问题描述】:有一个主要的销售页面:site.com/sales-page
该页面接收来自不同流量来源的访问者,并在其 URL 参数中提及他们,例如:site.com/sales-page?utm_source=fbads&utm_campaign=banner
那个销售页面有一个指向立即购买的链接
如何通过立即购买按钮将当前窗口中的所有 URL 参数(例如“?utm_source=fbads&utm_campaign=banner”)自动传递到下一页?
我需要这个,以便结帐页面根据转发参数知道流量来自哪里。
PS:我想传递 URL 中所有可用的参数,而不仅仅是预定义的参数。
PPS:解决方案必须适用于大多数浏览器和静态页面,最好不要使用 cookie/php。
非常感谢。
【问题讨论】:
“立即购买”有什么作用,它只是一个链接吗?您不能在该链接的末尾添加相同的查询字符串,然后在下一页阅读它吗? 是的,只是一个链接。我将如何动态添加它? URL 参数一直在变化,utm_source=fbads、utm_source=googleads、utm_source=pinterest 等。 【参考方案1】:没有办法使用 html 来实现这一点。您必须使用编程语言。
例如:
<?php
$url = "http://example.com/foo/?" . $_SERVER['QUERY_STRING'];
?>
<a href="<?= htmlspecialchars($url); ?>">link</a>
如果您不想使用 PHP,则可以使用其他编程语言。
【讨论】:
我的网站托管在 S3 上,所以我不能使用 PHP。我认为 javascript 应该可以正常工作?【参考方案2】:仅使用 html 是无法做到的。最好的解决方案是服务器端代码。后备是使用 JavaScript,但如果 JavaScript 被禁用,这将不起作用。您可以从 url 读取搜索并将其添加到您的链接中。
<a id="buyNow" href="http://www.example.com">Buy</a>
<script>
(function ()
var lnk = document.getElementById("buyNow");
lnk.href = lnk.href + window.location.search;
())
</script>
这假设链接上已经没有查询字符串。如果有,您需要将搜索中的?
替换为&
【讨论】:
太棒了,正是我需要的。非常感谢!以上是关于转发 URL 参数的链接的主要内容,如果未能解决你的问题,请参考以下文章