动态插入GA跟踪ID代码会产生错误"未检测到HTTP响应" Google代码管理器

时间:2016-05-20 11:26:41

标签: javascript angularjs google-analytics

我有几个域和不同的跟踪ID - 每个域都有自己的跟踪ID。

我使用以下指令插入正确的ID:

<select name="harga">
<?php
do {
?>
<option value="<?php echo $row_qpaket['harga']?>" ><?php echo $row_qpaket['harga']?></option>
<?php
} while ($row_qpaket = mysql_fetch_assoc($qpaket));
?>
</select>

app.directive('analytics', ['$compile', function($compile) { return { restrict: 'A', scope: { id: '=analytics' }, link: function (scope) { var el = $("#analytics"); var text = "(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)})(window,document,'script','//www.google-analytics.com/analytics.js','ga'); "; scope.$watch('id', function (trackId) { if (trackId) { $(el).append(text, "ga('create','" + trackId + "', 'auto');"); } $compile(el)(scope); }) } };}]); 当然,我可以创建脚本标签并插入头部,而不是使用id。

我收到错误HTTP响应错误

  

缺少HTTP响应表示,虽然在页面源中检测到Google Analytics代码,但脚本本身并未执行。每次Google Analytics脚本执行时,我们都会希望向Google服务器发送跟踪请求的HTTP响应。   这意味着Google Analytics代码未在网页上正确实施,也不会收集任何数据。

如果我手动将跟踪ID添加到index.html - 没有错误。 但我仍然以某种方式在Google Analytics中收到数据,但在Google Analytics中收到以下错误消息:

  

找不到有效的跟踪代码。确保你的   页面标有受支持的跟踪代码版本。

是否有任何有效的动态添加跟踪ID的方法?

1 个答案:

答案 0 :(得分:1)

只需使用Google跟踪代码管理器。

使用Google跟踪代码管理器,您可以设置一个查找变量,该变量采用{{Page Hostname}}变量并输出相关的跟踪ID。

这是我一起抛出的一个例子。请记住,如果主机名前面有&#39; www。&#39;,并且查找表仅与精确值匹配(尽管它还提供了一个默认选项,您可以使用它)用于调试目的)。

使用Google跟踪代码管理器部署您的网页浏览代码时,只需将跟踪ID字段设置为您为变量命名的内容。

domain lookup variable

page view tag