首页 文章

匹配Google adwords引荐网址

提问于
浏览
1

嗨我想在我的网站上显示不同的内容,如果用户已经访问了我的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

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

    Like: 如果有人刚从产品关键字中访问暗示购买意图(如iPhone 6 64 GB Paris)或只是一般关键字"smart phone"

    我建议您 make use of UTM params ,在这种情况下AdWords manual tagging,至少对于您希望显示此内容的页面 .

    网址然后可能像http://domain.nl/?utm_source=google&utm_medium=ppc&utm_campaign=content_x

  • 1

    我使用preg_match来识别每个adwords引用URL中的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";
    
    }
    
    ?>
    

相关问题