【问题标题】:Should Google Analytics go in the head or bottom of an HTML page?Google Analytics 应该放在 HTML 页面的顶部还是底部?
【发布时间】:2011-07-19 05:38:27
【问题描述】:

Google 建议在关闭 </head> 之前放置 google 分析脚本。

但是,我更愿意将它与我的其余 javascript 组合在一起,这些 javascript 现在都放在一个缓存的外部文件中,该文件加载在我的 HTML 文件的底部。我可以按我的方式做吗?如果是这样,那么我有什么风险/将下面的代码放在 HTML 的底部而不是头部的成本是多少?

<script type="text/javascript">
 var _gaq = _gaq || [];
  _gaq.push(['_setAccount', 'UA-22180365-1']);
  _gaq.push(['_setDomainName', 'none']);
  _gaq.push(['_setAllowLinker', true]);
  _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>

【问题讨论】:

标签: javascript html google-analytics html-head


【解决方案1】:

你可以把它放在&lt;/body&gt;之前,我认为这不会有任何问题。

【讨论】:

    【解决方案2】:

    你真的没有任何风险。建议将&lt;script&gt; 标记放在&lt;body&gt; 的末尾,因为在执行它所包含的Javascript 时具有阻塞 特性。由于 GA 的 Javascript 是动态插入的,因此是非阻塞的,因此您可以将其放在任何地方。

    我想 Google 看到的唯一“问题”是,当将该代码放在您网站的底部时,您可能无法捕获访问者/页面加载在完成之前取消请求。如果有人调用您的 HTML 文档并取消请求,则可能不会遇到 GA 代码(因此不会执行)。

    【讨论】:

    • 它会appearGoogle 的跟踪 sn-p 是非阻塞的,即使在 部分中使用也是如此。
    • 这不再正确。 Google 建议将代码放在结束 head 标签之前
    • 来自 Google:“将您的 sn-p(原样,完整地)粘贴到您要跟踪的每个网页中。将其粘贴在结束 标记之前。” - support.google.com/analytics/answer/1008080?hl=en
    【解决方案3】:

    实现代码 找到代码 sn-p 后,将其复制并粘贴到内容底部,紧邻您计划跟踪的每个页面的 &lt;/body&gt; 标记之前。如果您使用通用的包含或模板,则可以在此处输入。要实现安全页面的跟踪代码(例如 https://),请阅读如何获取安全页面的跟踪代码?

    【讨论】:

      【解决方案4】:

      你真的没有任何风险。建议将&lt;script&gt; 标签放在末尾,因为在执行它所包含的 Javascript 时具有阻塞性质...

      这根本不是真的,jAndy。

      除非代码位于 &lt;head&gt; 中,否则您将无法使用某些功能,例如实时报告或 Google 网站管理员工具验证。异步代码的全部意义在于它可以在页面的其余部分加载时加载。将其放在&lt;head&gt; 中没有用户体验风险,这样做是最佳实践。 来源:Google Analytics Support

      @Stratboy 我怀疑是 GA 代码破坏了布局。正确标记的脚本——尤其是不显示任何内容的脚本,如 GA 的——不会影响布局。我会在别处寻找您的布局问题。或许尝试通过 W3C 验证它以获取一些线索?

      【讨论】:

      • jAndy 的评论对于“传统”脚本包含是正确的,但您是对的,Google Analytics 已努力使他们的脚本无阻塞,因此在这种情况下建议是错误的。
      • @Analyticus “Google 网站管理员工具验证”有什么好处,或者我如何找到有关“实时报告”的更多信息。谷歌引用放置&lt;head&gt;(在您的链接中找到)的原因对我来说似乎很弱“这增加了在用户离开页面之前发送跟踪信标的可能性。”如果在 1-2 秒内离开页面,我什至还想计算它们吗?
      • 这在很大程度上取决于您的网站。如果您的页面平均需要 20 秒才能加载(上帝保佑!),那么这肯定会影响您收集数据的方式。对大多数人来说,实时报告对时间的利用并不好。如果还有其他实时事件影响您的决策,那么是的,一定要看看。然而,我对客户的最大警告之一就是不要在没有明确目标的情况下进入分析领域。这有点像在没有清单的情况下去杂货店购物:您总是会花费比预期更多的(时间)。
      【解决方案5】:

      我同意接受的答案。我想补充一点,我注意到谷歌网站管理员工具(GWT)需要跟踪代码(异步版本)才能通过同一网站的现有谷歌分析注册为您的网站注册为管理员。所以如果&lt;head&gt;中没有JS跟踪代码,则此注册选项不可用。

      这可能是 Google 强制更多网站执行此操作的方式。也许谷歌可以更好地准确跟踪那些在页面加载期间取消的访问者。这些可能会为他们提供有趣的分析,以优化他们的搜索结果(例如,为他们的统计数据维护“早期反弹”事件)。

      【讨论】:

        【解决方案6】:

        来自谷歌分析设置instructions

        将您的 sn-p(完整的未更改)粘贴到每个网页中 您要跟踪的。在关闭之前粘贴它 &lt;/head&gt; 标签。

        如果您的网站使用模板生成页面,请输入 它就在包含 &lt;head&gt; 的文件中的结束标记之前 部分。

        【讨论】:

          【解决方案7】:

          在结束正文标记之前,我在正文部分有脚本,它总是显示我的网站缺少跟踪代码分析管理面板,所以我移到了正文部分,它工作正常。

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 2016-10-20
            • 2022-08-18
            • 2018-11-18
            • 1970-01-01
            • 2010-09-13
            • 1970-01-01
            相关资源
            最近更新 更多