使用插件

插件是用于增强 analytics.js 的功能以帮助衡量用户交互情况的脚本。插件特指一组并非所有 Google Analytics(分析)用户都需要使用的功能,例如电子商务跨网域跟踪,因此默认情况下未包含在 analytics.js 中。

本指南说明如何请求和使用 analytics.js 插件。

请求插件

require 命令需要使用插件名称,并注册该插件以便在 ga() 命令队列中使用。如果插件接受配置选项,可以将这些选项作为排在最后的参数传递给 require 命令。

下面是完整的 require 命令签名:

ga('[trackerName.]require', pluginName, [pluginOptions]);

例如,您应该用以下命令调用来请求增强型电子商务插件,以便将其与默认跟踪器搭配使用:

ga('require', 'ec');

下例显示了如何为名称为 "myTracker" 的跟踪器请求展示广告功能插件,并通过传递配置选项替换默认的 Cookie 名称值:

ga('myTracker.require', 'displayfeatures', {
  cookieName: 'display_features_cookie'
});

加载插件代码

require 命令会初始化插件的方法以便在 ga() 命令队列中使用,但该命令本身不会加载插件脚本。如果您要使用第三方插件或自己编写插件,则需要在网页中手动添加插件代码。

在网页中添加插件代码的推荐方式是使用 <script> 标记并设置 async 属性,以确保该插件不会阻止您网站上其他功能的加载。

以下代码请求并加载了一个假设的链接跟踪插件:

<script>
ga('create', 'UA-XXXXX-Y', 'auto');
ga('require', 'linkTracker');
ga('send', 'pageview');
</script>

<!--Note: plugin scripts must be included after the tracking snippet. -->
<script async src="/path/to/link-tracker-plugin.js"></script>

等待插件加载完成

由于 analytics.js 库和 analytics.js 插件都是异步加载的,因此不易确定插件何时加载完成可供使用。

analytics.js 库解决此问题的方式是,在命令队列遇到 require 命令对尚未加载的插件进行请求时暂停命令队列的执行。当插件加载后,立即恢复命令队列的正常执行。

因此,对您要使用的插件进行测试以确保其成功加载和正确运行非常重要。如果某个插件无法加载或出错,就会造成后面所有的 analytics.js 命令都无法执行。

调用插件的方法

对插件发出请求后,就可以使用 ga() 命令队列调用其方法。下面是调用插件方法的命令签名:

ga('[trackerName.][pluginName:]methodName', ...args);

例如,您可以用如下代码调用增强型电子商务插件的 addProduct 方法:

ga('ec:addProduct', {
  'id': 'P12345',
  'quantity': 1
});

您也可以在以上命令字符串中添加跟踪器名称,针对已命名的跟踪器调用该方法:

ga('myTracker.ec:addProduct', {
  'id': 'P12345',
  'quantity': 1
});

后续步骤

阅读了这一部分的所有指南文章后,您应该已经熟悉 analytics.js 的大多数功能。下一篇指南将介绍如何调试您的 analytics.js 实现以轻松发现错误并确保代码的执行情况完全符合预期。