使用Google Analytics计算用户对图片的访问次数

时间:2012-11-01 12:46:37

标签: php javascript google-analytics

我在使用PHP和Google Analytics时遇到问题。基本上我想要做的是当用户通过 Google Analytics 中的电子邮件客户端从我的电子邮件<img src='path/to/image' />访问此图片时计算访问次数。

// If is a view then just show an image
if($mysqlAction == "VIEW")
{
    // Create a blank image and add some text
    header('Content-Type: image/jpeg');
    readfile('image.jpg');
    ?>
    <script type="text/javascript">

    var _gaq = _gaq || [];
    _gaq.push(['_setAccount', 'UA-35932495-2']);
    _gaq.push(['_trackPageview']);

    (function() {
    var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
    ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
    var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
    })();
    </script>
    <?php
}

我的问题是在

之后
    // Create a blank image and add some text
    header('Content-Type: image/jpeg');
    readfile('image.jpg');

放置任何代码都没用,因为script.php的输出就像访问image.jpg一样,但我真的需要在Google分析中统计视图。

我想要的是什么:

  1. 我该如何解决这个问题?
  2. 不要给我一个像Sendblaster的TrackReports或任何类似的解决方案。
  3. 我的想法是:

    1. 我的想法是双缓冲,比如首先显示analitycs代码然后ob_flush()图像
    2. 使用CURL其他页面或其他内容获取...
    3. 使用Analitics for PHP ...
    4. 任何解决方案?

2 个答案:

答案 0 :(得分:0)

我认为您可以在本文中找到解决方案:http://techpad.co.uk/content.php?sid=186

作者实现PHP类从服务器端而不是客户端JS访问谷歌分析服务。

我希望它会有所帮助。

答案 1 :(得分:0)

您可以使用广告系列跟踪标记您的超链接(请参阅http://cutroni.com/blog/2008/11/04/email-tracking-with-google-analytics/),但除此之外,我不知道您是如何做到这一点的。在电子邮件客户端中对JS的支持在最好的时候是不稳定的,当然,你不能在图像中包含JS。我的建议只是在您的电子邮件中标记您的超链接,至少这样您就可以在Google Analytics内部了解有多少访问者来自您的电子邮件广告系列。

如果您想要跟踪这些电子邮件的读取次数等,那么它们可以在您当前的方法中使用(php空白图像)。但是,您无法将此数据发送到Google Analytics,您必须开发自己的数据使用方式。

话虽如此,现在没有人被迫下载这些图片,因此您将获得的指标充其量只是估计值。