1

开源网络分析软件 Piwik 的建议是将以下代码放在您要跟踪的页面的末尾,直接在结束</body>标记之前:

<html>
<head>
    [...]
</head>
<body>
    [...]
    <!-- Piwik -->
    <script type="text/javascript">
    var pkBaseURL = (("https:" == document.location.protocol) ? "https://piwik.example.com/" : "http://piwik.example.com/");
    document.write(unescape("%3Cscript src='" + pkBaseURL + "piwik.js' type='text/javascript'%3E%3C/script%3E"));
    </script><script type="text/javascript">
    try {
    var piwikTracker = Piwik.getTracker(pkBaseURL + "piwik.php", 4);
    piwikTracker.trackPageView();
    piwikTracker.enableLinkTracking();
    } catch( err ) {}
    </script><noscript><p><img src="http://piwik.example.com/piwik.php?idsite=4" style="border:0" alt="" /></p></noscript>
    <!-- End Piwik Tracking Code -->
</body>
</html>

在以下假设下:

  1. https 从未使用过
  2. 我们不在乎页面加载速度较慢,因为脚本在 DOM 之前加载

可以将以上内容转换为以下内容:

HTML 文件:

<html>
<head>
    [...]
    <script src="http://piwik.example.com/piwik.js" type="text/javascript"></script>
</head>
<body>
    [...]
    <noscript><p><img src="http://piwik.example.com/piwik.php?idsite=4" style="border:0" alt="" /></p></noscript>
</body>
</html>

使用 jQuery 自定义 Javascript 文件:

$(document).ready(function() {
    try {
        var piwikTracker = Piwik.getTracker("http://piwik.example.com/piwik.php", 4);
        piwikTracker.trackPageView();
        piwikTracker.enableLinkTracking();
    }
    catch(err) {
    }
}

有什么不同吗?

4

1 回答 1

0

您正在推迟跟踪,直到页面完全加载。内联 Javascript 会在浏览器找到它时执行,因此您将获得不同的访问次数,具体取决于您调用的位置piwikTracker.trackPageView();。您称之为后者,将计算较少的访问/操作次数。

现在,您认为访问/操作是什么?如果用户在页面完全加载之前点击了您页面上的链接,您认为这是一次访问吗?

于 2013-02-07T12:02:20.570 回答