如何通过Google Tag Manager统计无限滚动懒加载文章的访问量
需求可行性结论
这个需求完全可以实现,本质是在无限滚动触发的无刷新页面变更场景下,向GTM发送虚拟页面浏览事件,最终统计效果和用户直接打开文章的普通页面访问完全一致。
具体实现步骤
- 第一步:在无限滚动的业务逻辑中插入事件推送代码
确认新文章内容渲染完成、通过history.pushState/history.replaceState同步更新URL和页面标题后,执行以下代码向GTM的数据层推送事件:window.dataLayer = window.dataLayer || []; dataLayer.push({ event: 'virtual_page_view', page_path: window.location.pathname, page_title: document.title, page_location: window.location.href }); - 第二步:配置GTM后台规则
- 新建自定义事件触发器,事件名称填写
virtual_page_view,触发条件设置为所有此类事件都触发 - 新建3个数据层变量,分别对应
page_path、page_title、page_location三个字段 - 编辑你已有的页面浏览统计标签(比如GA4页面浏览标签),将标签参数中的页面路径、页面标题、页面地址替换为刚才创建的3个数据层变量
- 给该页面浏览统计标签新增刚才创建的
virtual_page_view触发器,保存后发布GTM版本即可生效
- 新建自定义事件触发器,事件名称填写
- 第三步:验证统计效果
可以通过GTM的预览模式测试,滚动触发新文章加载时,确认虚拟页面浏览事件正常触发、参数和新文章信息匹配,也可以在统计后台的实时报告中查看访问记录,和普通直接访问的记录没有差异。
注意事项
- 必须保证事件推送时机是在URL、页面标题都更新完成之后,避免统计到错误的页面信息
- 如果你的统计配置有自定义维度、自定义指标需要随页面变更,也可以同步添加到
dataLayer的推送内容中
内容的提问来源于stack exchange,提问作者Sexto
相关产品推荐
相关产品推荐

