您好,如果用户访问了我的 Google Adwords 广告系列,我正在尝试在我的网站上显示不同的内容。
我在 Chrome 控制台中使用了 document.referrer 来查找引荐来源网址并将此信息放在下面的代码中
如果我将引荐来源网址设置为 Google.com 并从那里访问,则脚本会执行 - 但是当尝试与 Google Adwords 引荐来源网址匹配时,它不起作用。
我在想我可以尝试匹配字符串长度,或者只是匹配字符串的“/?gclid=”部分
<?php
// This is to check if the request is coming from a specific URL
$ref = $_SERVER['HTTP_REFERER'];
if($ref == 'http://domain.nl/?gclid=CjwKEAiApOq2BRDoo8SVjZHV7TkSJABLe2iDnbfXanR14L-Di0IaoXGFTRx_uF_SGJ6QrmMstGDQChoCbBzw_wcB') {
echo "yes";
}
else {
echo "no";
}
?>
最佳答案
我使用 preg_match 来识别每个 adwords 引荐来源网址中的 gclid 字符串。
这行得通 - 但还有另一个问题。当页面最初加载时,未设置引荐来源网址 - 它仅在导航到下一页时设置(当脚本运行时)。
但是,当页面首次加载时,Adwords 推荐位于浏览器地址栏中,因此我使用 REQUEST_URI 和“或”来检测地址栏中的 gclid 字符串。这是代码:
<?php
if(preg_match('/gclid/i', $_SERVER['HTTP_REFERER']) or preg_match('/gclid/i', $_SERVER['REQUEST_URI'])) {
echo "adwords visitor content";
}
else {
echo "regular visitor content";
}
?>
https://stackoverflow.com/questions/35813737/