Google 给了我一段 javascript,并告诉我把它包含在 <head>中。
<head>
我可以把它放在结束 <body>或会有一些副作用发生,如果我这样做?
<body>
你可以把它放在任何你想放的地方。我总是把跟踪代码放在页面的最后,我从来没有任何问题。
将它放在 <head>部分的末尾有助于确保即使在用户不让页面完成加载时也能跟踪您的指标。
他们过去常常告诉你把它放在页面的底部,然后再添加对处理部分加载页面的支持。
直接来自谷歌:
的主要优点之一 异步代码片段是您可以 将它放置在 HTML 的顶部 文件。这增加了 追踪信标 将在用户离开之前发送 页。按照习惯,放置 <head>部分中的 JavaScript 代码, 我们建议放置代码片段 在这一部分的底部 获得最佳表现。
参见 谷歌分析帮助: 将跟踪代码直接添加到站点
在头部,就在关闭 </ head>标签之前,那么您将不会有任何问题,验证您的网站在网站管理员工具。
</ head>
你可以把它放在页面上的任何地方,我会在页面上的任何地方运行,无论是在头部还是身体。但是根据 Google 的支持(将跟踪代码直接添加到站点) ,推荐它使用头部标签 在关闭 </head>标记之前立即粘贴它。
</head>
下面是 文章不错中解释为什么要在 head 标签中放入代码的段落
页面视图只有在代码加载之后才会被记录 你越快加载代码,页面视图就越快被记录下来。让我们 假设你有一个很大的博客页面,而且加载速度很慢 10到20秒加载所有东西。如果你的谷歌代码没有 开始直到页面结束,它可以得到举行,就像旧的 非异步代码,用于保存其他代码行。除了现在 如果你网站的访问者点击了 然后在追踪代码启动 Pageview 之前离开, 那么你就失去了那个访客。他们现在变成了一个新的直接访问 无论他们登陆的是哪个页面。这可以使各种各样的 你网站上的资料不正确。
将以下代码(称为“ JavaScript 跟踪片段”)添加到站点的模板中是开始使用 analytics.js 的最简单方法。
代码应该添加在标签的顶部附近,在任何其他脚本或 CSS 标签之前,字符串“ UA-XXXXX-Y”应该被替换为您希望跟踪的 Google Analytics 属性的属性 ID (也称为“追踪 ID”)。
<!-- Google Analytics --> <script> (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','https://www.google-analytics.com/analytics.js','ga'); ga('create', 'UA-XXXXX-Y', 'auto'); ga('send', 'pageview'); </script> <!-- End Google Analytics -->
上面的代码做了四件主要的事情:
创建一个元素,该元素开始从 https://www.google-analytics.com/analytics.js异步下载 analytics.jsJavaScript 库
初始化一个全局 ga 函数(称为 ga ()命令队列) ,该函数允许您在加载 analytics.js 库并准备好运行之后安排命令的运行。
向 ga ()命令队列添加一个命令,为通过“ UA-XXXXX-Y”参数指定的属性创建一个新的跟踪器对象。
向 ga ()命令队列添加另一个命令,以便将当前页面的页面视图发送到 GoogleAnalytics。
代码应该总是添加在标签的顶部附近,在任何其他脚本或 CSS 标签之前,字符串 'UA-XXXXX-Y'应该替换为您希望跟踪的 Google Analytics 属性的属性 ID(也称为“追踪 ID”)。
'UA-XXXXX-Y'
ID
2022年最新情况
一般帮助页现在声明“在每个要度量的页面上打开 <head>标记之后复制并粘贴全局站点标记”。因此,他们现在希望它 之前几乎一切。这可能是由于跟踪脚本的更改造成的。
2020年最新情况
谷歌目前建议使用 三个不同的地点,这令人沮丧。我还没有从谷歌那里直接找到任何技术上的理由。
对于 静电干扰站点,一般帮助页告诉我们在关闭的 </head>标记之前放置代码片段。
对于 充满活力站点(使用服务器生成的文档) ,同一站点要求将其放在“打开 <body>标签后立即”。
然而,对于所有站点,开发商网站仍然让我们把它“放在 <head>标签的顶部,放在任何其他脚本或 CSS 标签之前”。
这些位置差别很大,对特定用户最好的方式可能取决于是否需要收集部分页面加载。可能需要进行一些测试。
2021年关于页面加载速度的补充
在2021年之前,这个问题的答案相当直截了当。一般来说,谷歌分析收集最可靠的数据时,尽早运行的页面加载。但有两件事需要考虑:
在某些情况下,当您将 GA 与 GTM 放置在脚本较多的站点上时,很容易通过实现影响页面和核心 Web 重要信息的加载时间。你可以在谷歌网页速度洞察中看到这种影响在许多热门网站-在2021年之前,这几乎没有关系。现在,改变 GTM (和 GA)的位置可以对 PageSpeed Insights 的结果产生很大的影响。看看在 PageSpeed Insights 中“移除阻塞呈现的 javascript”通知包含 GTM 和 GA 标记的频率。
所以,总而言之,在2021年,甚至会有这样的情况,你想把 GA 代码放在主体的末尾。您必须对您的决策格外小心,特别是在使用 GTM 和其他脚本实现它时。