一、百度统计代码获取
1、注册账号
2、新增网站
-
2.1 新增网站之后将可以看到对应的操作项
image.png - 2.2 获取代码
- 每个网站会有不同的id
<script>
var _hmt = _hmt || [];
(function() {
var hm = document.createElement("script");
hm.src = "https://hm.baidu.com/hm.js?myId";
var s = document.getElementsByTagName("script")[0];
s.parentNode.insertBefore(hm, s);
})();
</script>
二、常规代码安装
直接在public index.html下新增script代码
- 将script放置于meta referrer标签前,否则可能导致出现百度统计referrer禁用问题
<script src="https://hm.baidu.com/hm.js?myId" id='baidu_tj'></script>
<meta name="referrer" content="no-referrer" />
- router.beforeEach中增加PV
router.beforeEach(async (to, from, next) =>{
try {
window._hmt = window._hmt || []
window._hmt.push(['_trackPageview', to.fullPath])
} catch (e) {
console.log('tongError', e)
}
}
三、nuxt.js安装百度统计
方式一、
- 1、plugins下创建baiduTJ.js
var _hmt = _hmt || [];
(function () {
var hm = document.createElement('script')
hm.src = "https://hm.baidu.com/hm.js?myId";
hm.id = 'baidu_tj'
var s = document.getElementsByTagName('script')[0]
s.parentNode.insertBefore(hm, s)
})()
export default ({
app: {
router
},
store
}) => {
router.afterEach((to, from) => {
try {
window._hmt = window._hmt || []
window._hmt.push(['_trackPageview', to.fullPath])
} catch (e) {}
})
}
- 2、nuxt.config.js中引入
plugins: [
{
src: '@/plugins/baiduTJ',
ssr: false
}
]
- 未知问题1:代码检测不到(首页代码状态一直为未检测到代码)。未做第三方广告时显示正常。推测是第三方广告自动生成的script一直插在百度统计之前,将百度统计代码setTimeout放置在最前也未能解决。
- 解决:在文档中看到如果通过js文件调用的方式安装统计代码,由于无法直接在网站页面中找到统计代码,会提示“未检测到代码”
- 存在问题:referrer禁用。
meta:[{ name: 'referrer', content: 'no-referrer' }]- 加了meta标签将将百度统计代码放在第一个script无报告显示 ,加在meta标签前也无报告显示。
- 未加meta标签则有数据显示。均未检测到代码。(存在隐患)
方式二、
在与nuxt.config.js 同级的app.html下照常规方式接入
<!DOCTYPE html>
<html {{HTML_ATTRS}}>
<head {{HEAD_ATTRS}}>
{{HEAD}}
<script src="https://hm.baidu.com/hm.js?myId" id="baidu_tj"></script>
<meta name="referrer" content="no-referrer">
</head>
<body {{BODY_ATTRS}}>
{{APP}}
</body>
</html>
四、其他问题
1、受访域名并非本网站域名
- 配置白名单
- 管理---更多设置---过滤规则设置---白名单---添加受访域名白名单。则只同级白名单及子域名下的数据
2、数据量过少
- 网站概况的PVUV等数据均非实时,目测大概十五分钟统计一次
- 实时访客中根据访问明细,找到对应的访客标识码测试刷新是否增加PV,两秒就能看到数据增加
五、事件跟踪(事件分析)
- _hmt.push(['_trackEvent', category, action, opt_label, opt_value]);
- _hmt为暴露在全局的方法
1. '_trackEvent': 固定参数,表明统计类型是时间跟踪。
2. category:要监控的目标的类型名称,通常是同一组目标的名字,比如"视频"、"音乐"、"软件"、"游戏"等等。该项必选。
3. action:用户跟目标交互的行为,如"播放"、"暂停"、"下载"等等。该项必选。
4. opt_label:事件的一些额外信息,通常可以是歌曲的名称、软件的名称、链接的名称等等。该项可选。
5. opt_value:事件的一些数值信息,比如权重、时长、价格等等,在报表中可以看到其平均值等数据。该项可选。
- 后四个都可以自定义
window._hmt = window._hmt || []
window._hmt.push(['_trackEvent', '参与人数', '点击', '点击转盘']) //赣菜分享事件跟踪

image.png
- 数据更新得很慢,且不稳定,目测大概30-120分钟刷新,有时快有时慢
