登录 Hyper Web Analytics (以下简称 HWA), 获取跟踪代码,获取方法请参考"项目设置 > 基本信息 > 复制代码"。
要开始跟踪一个网页,将以下 Javascript 代码片段粘贴网页的 <head/>
前,PROJECT ID 参数是必填, 以下是示例代码,应该以你复制的代码为准。
<script>
/** Hyper Analytics **/
(function(i,d,t,o,u,h,s,f){i[t]=i[t]||[], i[t].push(h);
i[h]=i[h]||function(){return (i[h].q=i[h].q||[]).push(arguments)};
s=d.createElement(o);s.src=u;s.async=1;f=d.getElementsByTagName(o)[0];
f.parentNode.insertBefore(s, f);
})(window, document, 'HyperAnalyticsObject', 'script', '//t.hypers.com.cn/hwt.js', '_ha');
_ha('create', 'PROJECT ID');
_ha('send', 'pageview');
/** End Hyper Analytics **/
</script>
全埋点跟踪其实就是自动跟踪用户的点击事件,可以为行为跟踪统计与热力图统计提供数据。默认新创建的项目是没有开启全埋点,如果需要开启,则需要登录到系统进入 "项目设置 > 基本信息 > 全埋点状态",点击开启即可。 在获取代码的时候就会在代码中配置 auto_track
参数。
_ha('create', 'PROJECT ID', {
auto_track: true
});
在 Hyper Web Analytics 上使用全埋点热图功能需要使用 iframe 来加载客户的网站。如果网站禁止了 iframe 加载,就无法正常使用热图功能,需要设置 http 响应头允许 iframe 加载。
如果你的网站使用 https 协议,需要响应头添加配置:
Content-Security-Policy:frame-ancestors 'self' https://analytics.hypers.com.cn
X-Frame-Options: Allow-From https://analytics.hypers.com.cn
如果你的网站使用http协议,需要响应头添加配置:
Content-Security-Policy:frame-ancestors 'self' http://analytics.hypers.com.cn
X-Frame-Options: Allow-From http://analytics.hypers.com.cn
配置中域名
analytics.hypers.com.cn
为 Hypers Saas 环境域名,企业独立部署环境请使用真实产品访问域名进行替换。
跟踪代码部署好以后,刷新页面就会有跟踪请求。登录 Hyper Web Analytics,进入 "概况>实时分析" 就能看的跟踪数据。
您可以通过网页跟踪来衡量网站上特定网页获得的浏览次数。网页通常对应于整个 HTML 文档,但也可以表现动态加载的内容,这种情况也称为"虚拟网页浏览"。
语法:
_ha("send", "pageview", [配置参数]);
默认:
_ha("send", "pageview");
修改页面信息:
_ha("send", "pageview", {
title: "登录页面",
url: "/index.html#login"
});
添加自定义参数:
_ha("send", "pageview", {
params: {
email: "foo@bar.com",
name: "foobar"
}
});
自定义行为跟踪,是指对用户在网站上触发某个行为或者完成某个操作进行跟踪。比如用户点击了页面的注册按钮,购物车按钮,播放器开始播放按钮,或者是用户登录成功这些都算是行为, 也可以根据您网站的业务情况来定义一个行为。
语法:
_ha("send", "action", [自定义事件名称], [自定义参数]);
应用场景 1: 一个想要买车,在一个目标网页中预约试驾,填写一个预约表单。
_ha("send", "action", "register", {
name: "张三",
phone: "186****1234",
gender: "男"
});
应用场景 2: 电子商务中提交订单跟踪。
例如:一个男性用户,提交了一个订单,总价格为 28000,包含两件商品:苹果电脑和蓝牙耳机。因为商品(goods)包含多个,所以在传递时候可以采用数组类型。
_ha("send", "action", "buy", {
total_amount: 28000,
goods: [
{ name: "苹果电脑", type: "数码", price: 18000, count: 1 },
{ name: "蓝牙耳机", type: "数码", price: 1000, count: 10 }
],
gender: "男"
});
应用场景 3: 一个用户在新注册一个网站后,同时关注了多个标签。
例如:一个男性用户关注了 5 个领域的标签,这里的标签也是存在多个,所以采用了数组的类型。
_ha("send", "action", "follow", {
labels: ["数码", "音乐", "体育", "篮球", "动漫"],
gender: "男"
});
在某些情况下,我们需要关联用户和他们行为的标识和特征。提供了一个 identify API 可以让开发者自定义传递需要关联的信息。
语法:
_ha('identify', {
muid: [媒体用户Id],
wx_id: [微信用户的 openId]
});
注意,identify 方法 必须在 send 方法之前执行。
更多详细说明请参考:Web JS SDK API
在某些情况下需要对单页 Web 应用(single page web application,SPA)进行跟踪,这些网站是通过 React 、Vue 等框架实现的页面,在页面切换时候页面无刷新,便不会执行 pageview
,导致无法正确统计页面访问次数。
我们提供了一个 url_change_track
参数,专门针对 SPA 的网站进行跟踪,当设置为 true
的时候,会开启对 History API 和 hashchange 的监听,并发送对应的 pageview
请求。
_ha("create", "PROJECT ID", {
url_change_track: true,
});
如果你希望自己控制,也可以使用框架提供 Router 监听,在路由发生改变的时候手动执行 pageview
。以下是一个场景实例:
假设有个网站的“首页”可通过以下地址进行页面访问:
//当用户跳转到About Us页面执行以下方法
_ha("send", "pageview", {
title: "About Us",
url: "/index#about-us",
});
//当用户跳转到Login页面执行以下方法
_ha("send", "pageview", {
title: "Login",
url: "/index#login",
});
注意:以上代码是演示实例,不能直接使用,请根据跟踪的网站情况配置 title 与 page 两个参数。
如果需要在一个网页上创建多个项目对网站进行跟踪,首先为跟踪器创建一个别名
//项目001
_ha("create", "PROJECT-001", { name: "tracker1" });
//项目002
_ha("create", "PROJECT-002", { name: "tracker2" }); // New Tracker.
执行开始跟踪命令的时候,在跟踪器的命令前面加上名称。例如:
//项目001
_ha("tracker1.send", "pageview");
//项目002
_ha("tracker2.send", "pageview");
表单跟踪主要应用于问卷分析系统,对用户填写的表单内容进行跟踪。
_ha('send', 'form', {
fd1: 'foobar',
fd2: 'foobar@hypers.com',
...
});
一个表单中会对应很多字段,所有的字段参数我们以 fd 开头, 比如第 1 个字段用 fd1, 第 2 个字段为 fd2, 以此类推,对应的值则放在用户填入(或者选择)的内容。
注意: 一个表单提交数据形式有很多,可能是 ajax , 也可能是一个 post 提交, 为了能够完整的收集到表单数据,所以需要注意以下方面:
针对微信访问的活动页面,在前端能够获取到用户的 openId
, 在 HWA 中可以通过 openId
作为用户的唯一标识。 部署跟踪代码的时候只需要在 send
之前,配置 identify
的参数值 wx_id
为 openId
。
_ha("identify", { wx_id: [openId] });
_ha("send", "pageview");
对于视频和音频,业务上往往需要去统计用户的播放时长等指标。在 Web 端, JS SDK 提供了对跟踪视频、音频的一组方法。
参考本页 "快速开始> 1.部署跟踪代码" 的说明。
需要在页面中引入 hwt.addons.js
<script src="https://t.hypers.com.cn/hwt.addons.js"></script>
// vid, vtype, interval 为必填参数
var player = _ha.addon('_stream_media', {
vid: '[视频的唯一标识]', // 必填, 唯一标识
vtype: 'live', // 必填, 流媒体类型,可选值: live,video,audio。
interval: 10 // 必填, 心跳的间隔,单位: 秒
});
// 开始播放, 会每间隔 10秒 发送一次心跳请求
player.start();
// 暂停播放,暂停心跳发送
player.pause();
// 结束播放,终止心跳请求
player.end();
以上示例,创建一个
player
,player
提供了start
、pause
、end
3 个方法,分别在用户对应操作时候调用。
视频&音频跟踪其实和自定义行为跟踪一样,可以为每一次跟踪请求添加自定义参数。
var player = _ha.addon('_stream_media', {
...省略的必填参数
// 配置自定义参数
name: 'NBA直播',
tags: '体育,篮球'
});
网站监测会在被监测网站中种cookie,用于网站用户行为分析中所需的用户标识。
为保护用户个人信息,请将以下信息明示于被监测网站的隐私声明中,或配套Consent Manager合规进行网站监测。
Cookie名称 | 有效期 | 域名 | 备注 |
---|---|---|---|
_HA_hid | 63072000s(即2年) | 与监测网站同域 | js前端种的cookie。 |
_hid | 63072000s(即2年) | 与tracker同域 | tracker后端种的cookie。 |
_hid1 | 63072000s(即2年) | 与tracker同域 | tracker后端种的cookie,含Secure和SameSite属性,主要针对chrome80以上的安全政策。 |
- 上述Cookie有效期为SaaS环境默认值,私有化环境可配置修改。JS前端种的cookie可以通过配置
create
方法中的cookie_expires
进行设置;如需修改tracker后端种的cookie有效期,请与客户经理联系。- 如因安全政策需要关闭部分cookie,JS前端种的cookie可以通过配置
create
方法中的cookie_disabled
参数进行关闭;如需关闭tracker后端种的cookie,请与客户经理联系。