如何正确跟踪pdf下载(谷歌分析)


How to track pdf downloads from properly (Google Analytics)?

在我的网站上,有可能下载pdf文件。在此之前,一切都很好。

现在,我想跟踪pdf下载。这可以通过在pdf:

的链接中使用Google Analytics Events来实现。
<a onclick="var that=this;_gaq.push(['_trackEvent','Download','PDF',this.href]);setTimeout(function(){location.href=that.href;},400);return false;" href="pdfs/my-file.pdf">Download my file</a>

问题是,如果有人从搜索引擎下载pdf,而不是直接从网站,这将不会被跟踪。

你知道如何跟踪的正确方法吗?

当我渲染pdf时,我应该在服务器端实现一些东西,这将触发GA事件吗?

提前感谢。

这是我刚刚找到的一个解决方案:

Google Analytics for PHP

使用php-ga,可以在服务器端模拟页面浏览量。对于我来说,当有人下载pdf文件时,我也会调用这段代码:

        // Initilize GA Tracker
        $tracker = new GoogleAnalytics'Tracker('UA-5824718-6', 'mdpi.com');
        // Assemble Visitor information
        // (could also get unserialized from database)
        $visitor = new GoogleAnalytics'Visitor();
        $visitor->setIpAddress($_SERVER['REMOTE_ADDR']);
        $visitor->setUserAgent($_SERVER['HTTP_USER_AGENT']);
        $visitor->setScreenResolution('1024x768');
        // Assemble Session information
        // (could also get unserialized from PHP session)
        $session = new GoogleAnalytics'Session();
        // Get filename from the previous request
        $filename = parse_url(urldecode($_SERVER['REQUEST_URI']), PHP_URL_PATH);
        // Assemble Page information
        $page = new GoogleAnalytics'Page($filename);
        $page->setTitle($filename);
        // Track page view
        $tracker->trackPageview($page, $session, $visitor);
        $this->downloadFile($file, 'application/pdf');

唯一的问题,我将不得不解决的是如何过滤机器人(机器人)…

您可以使用robots.txt文件来阻止搜索列表中的pdf文件,这意味着他们将获得前一页,并且必须单击链接。

例如:

User-agent: *
Disallow: /*.pdf$

如果在你的网站上添加PHP代码不是一个选择,有第三方工具可以处理你的网络日志,并将直接链接(又名热链接)文件列表上传到你的谷歌分析账户。我想到了Angelfish软件

我会认真考虑使用bit这样的产品。ly或Orangedox跟踪PDF下载&的观点。Orangedox甚至允许您跟踪在PDF的每个页面上花费的时间,并在人们通过谷歌找到您的PDF时工作。

免责声明:我为Orangedox工作