匹配Google adwords引荐网址

时间:2016-03-05 11:49:42

标签: php google-adwords

您好我正试图在我的网站上显示不同的内容,如果用户已经访问了我的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";

}

?>

2 个答案:

答案 0 :(得分:1)

是的,您可以测试referer是否具有 gclid 参数(它几乎总是具有不同的长度),但是您丢失了有关WHICH广告系列导致该信息的信息,并且可能基于此消息不同。

赞:如果有人刚从产品关键字中访问暗示购买意愿(如iPhone 6 64 GB Paris)或只是一般关键字“智能手机”

我建议您使用UTM参数,在本例中为AdWords manual tagging,至少对于您希望展示此内容的网页而言。

url则可能像http://domain.nl/?utm_source=google&utm_medium=ppc&utm_campaign=content_x

答案 1 :(得分:0)

我使用preg_match来识别每个adwords引荐来源网址中的gclid字符串。

这有效 - 但还有另一个问题。当页面最初加载时,引用者URL未设置 - 仅在导航到下一页时(脚本工作时)设置。

然而,当页面首次加载时,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";

}

?>