【问题标题】:Using Google Analytics on an image在图像上使用 Google Analytics
【发布时间】:2010-08-25 08:41:37
【问题描述】:

基本上我想在服务器上运行 Google Analytics,而不是显示 1px .GIF(原因是我想显示一个图像而不是 HTML,而是作为内容类型:image/jpeg

    $GA_ACCOUNT = "MO-3845491-5";
      $GA_PIXEL = "ga.php";

      function googleAnalyticsGetImageUrl() {
        global $GA_ACCOUNT, $GA_PIXEL;
        $url = "";
        $url .= $GA_PIXEL . "?";
        $url .= "utmac=" . $GA_ACCOUNT;
        $url .= "&utmn=" . rand(0, 0x7fffffff);

        $referer = $_SERVER["HTTP_REFERER"];
        $query = $_SERVER["QUERY_STRING"];
        $path = $_SERVER["REQUEST_URI"];

        if (empty($referer)) {
          $referer = "-";
        }
        $url .= "&utmr=" . urlencode($referer);

        if (!empty($path)) {
          $url .= "&utmp=" . urlencode($path);
        }

        $url .= "&guid=ON";

        return $url;
      }

$googleAnalyticsImageUrl = googleAnalyticsGetImageUrl();
  //echo '<img src="' . $googleAnalyticsImageUrl . '" />';
  //open the google script with all our settings to generate the 1px x 1px blank gif which reports to GA
  $handle = fopen ($googleAnalyticsImageUrl, "r");
  $test = fgets($handle);
  echo $test;
  fclose($handle);  

//Pretend this page was a jpg image all along and get the jpg and return it.
$imageurl = fopen ('http://www.default.com/test.jpg', "r"); //this is where the real file should be located
while (!feof ($imageurl)) {
 $image = fgets($imageurl, 4096);
 header('Content-type: image/jpeg');
 echo $image;
}
fclose($imageurl);

任何帮助将不胜感激,因为我是 GA 的新手

【问题讨论】:

  • 我不明白你在做什么。您是否正在代理 GA 图像以更改其图像类型?为什么? (无论如何,它不会起作用,因为 REFERER 信息将不正确。)
  • 不,我想基本上将 GA 添加到 .jpg(我自己的图像)上,但是它必须是一个 php 文件才能让 GA 运行。所以我猜我必须先打开和关闭 GA .gif 文件(在服务器上)

标签: php google-analytics


【解决方案1】:

我无法评论是否可以通过这种方式触发对 GA 的请求,但您似乎已经完成了功课,并且 GA 调用看起来很公平。

据我所知,要完成这项工作,唯一的办法是不要输出 GA 图像的内容,因为这会搞砸你的 JPG。所以删除

 echo $test;

我看不出还有什么问题 - 如果它仍然不起作用,您必须添加一些关于问题所在的信息。

尽管这种方法有效,但通过 PHP 传递大量图像可能会给服务器带来压力,因为每个图像请求都会打开一个 PHP 解释器实例,如果需要,缓存将成为问题计算所有视图。

您是否考虑过使用父 HTML 页面中的 JavaScript 触发 GA“命中”事件?还是不够可靠?

【讨论】:

  • 我实际上只是添加了 >>echo $test;原因是它似乎仍然没有正确运行 GA。我唯一的另一个想法是在单独的文件上运行 fOpen 以运行带有 GA.gif 文件的 HTML 脚本,但它似乎也无法正常运行。我没有考虑过 JavaScript 选项,需要考虑一下。感谢您的帮助佩卡
  • @NWhite 也许 GA 不适合这个。您的网络服务器会自动记录对图像的点击。也许网络服务器的日志是正确的转向这里。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-07-15
  • 2011-02-09
  • 2020-11-07
  • 2020-06-03
相关资源
最近更新 更多