百度统计(Vue常规接入+nuxt接入踩坑)

一、百度统计代码获取

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分钟刷新,有时快有时慢
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容