0

我需要跟踪一个重定向到另一个 url 的动态按钮。每次发生这种情况时,我都需要进行跟踪,并确切知道用​​户正在重定向到哪个 url。

按钮代码:

 <a target="_blank" href="/out.php?url=<?php echo urlencode($this->product['from'])?>">
 <img src="http://xxx.com/data/images/buy.jpg" alt="buy"/>
 </a>

文件“out.php”

 <?php
 $url = urldecode($_GET['url']);
  header("Location: ".$url);
  exit;?>

我希望这样,例如,如果用户点击购买,它会重定向到“out.php”并显示一条消息,例如“U are beeing in a few seconds are redirected”,然后发送到 url。

我需要这个来通过分析跟踪用户登陆该页面的次数以及他们来自哪里,获得一些关于出站点击的指标。

有谁知道该怎么做?

提前致谢!!

4

2 回答 2

0

完成此操作的最简单方法是使用 Google Analytics。它可以让您跟踪出站点击、重定向等。

根据您当前的实现,只需将变量 $url 保存到数据库中。

另一种方法是使用 AJAX,监听 javascript 事件 window.onbeforeunload,让它调用 PHP 脚本(通过 AJAX),并将 URL 保存到数据库。这将使用户不​​必看到“您现在要离开”页面。

于 2012-11-20T18:26:51.260 回答
0

如果您正在使用事件跟踪器来确定单击了哪个链接,则可以过滤所有要跟踪的链接,并向链接添加事件调用:

var links = document.getElementsByTagName("a");

for(var i=0,l=links.length;i<l;i++){
   if (filter your links to only the external ones){
         links[i].onclick = function(){
             _gaq.push([your track event code here]);
         }
   }
}

由于您的链接有 target="_blank"; 无需添加延迟,因此 gaq 调用已完成。如果它们没有在新窗口中打开,您可以执行以下操作:

links[i].onclick = function(){
    _gaq.push([your track event code here]);
    var url = this.href;
    setTimeout(function () {
        window.location.href = url;
    },500); // redirect in 500 milliseconds

    return false;
}
于 2012-11-20T18:24:20.140 回答