0

我不确定执行此操作的方法是检查 Google Analytics cookie 还是以其他方式跟踪用户从何处来到我的网站。基本上我有一个带有隐藏字段的表单code="XY1"现在我需要能够为来自 Facebook 的人插入不同的预设代码,因此脚本必须检查访问者来自哪里,然后将代码 XF1 分配给任何来自FB,以及来自 Twitter 的任何代码 XT1 等。

像这样的 PHP 可以用于捕获吗?:

$referringPage = parse_url( $_SERVER['HTTP_REFERER'] );
if ( stristr( $referringPage['host'], 'facebook.com' ) )

或者这个 JS

var ref = document.referrer;

if (!ref.indexOf("facebook.com") != -1) {
  document.write(...)
}

我不确定最好的方法是什么,以及哪种方法可以可靠地检查访问者的来源,因此我们将不胜感激。

4

2 回答 2

2

您可以使用$_SERVER['HTTP_REFERER'],但不保证准确,甚至不存在。并非所有浏览器都必须设置它,有些浏览器允许您自己设置。Google cookie 不会包含任何网站历史记录,而且您无法检查浏览器历史记录,因此无法保证按照您的要求进行操作。

于 2013-09-25T21:34:28.023 回答
0

您可以使用 jquery $.test() 方法尝试此选项。

$(function(){
    var referer=document.referrer,  //option 1  
    //referer="<?php echo $_SERVER['HTTP_REFERER'];?>",//optional 2
    XFB=/facebook.com/g,
    XFT=/twitter.com/g,
    checkF1=XFB.test(referer),
    checkF2=XFT.test(referer);
if(checkF1){
    var code= "XF1";
  $('#hiddenInput').attr('value','ref:  '+referer)

}
else if(checkF2){
    var code= "XT1";
 $('#hiddenInput').attr('value','ref:  '+referer)
}
});
于 2013-09-25T22:27:32.457 回答