如何在AMP页面中获取锚点标签文本用于Google Analytics追踪?
解决AMP页面中Google Analytics追踪锚点点击文本的问题
我明白你在AMP页面上遇到的Google Analytics追踪锚点文本的困扰——AMP禁止自定义脚本确实堵死了常规的dataLayer推送路子,但咱们完全可以借助<amp-analytics>本身的内置能力来实现需求,不需要额外写脚本。
核心思路:利用AMP Analytics的内置变量
AMP的amp-analytics提供了专门的内置变量${clickText},它可以直接捕获被点击元素的文本内容,完美适配你的需求。我们只需要在触发器里配置这个变量,把它作为事件标签或自定义维度传递给GA即可。
完整配置示例
把你现有的<amp-analytics>代码修改成下面这样:
<amp-analytics type="googleanalytics"> <script type="application/json"> { "vars": { "account": "UA-XXXXX-Y" }, "triggers": { "trackAnchorClicks": { "on": "click", "selector": "a", "request": "event", "vars": { "eventCategory": "Anchor Clicks", "eventAction": "Click", "eventLabel": "${clickText}" } } } } </script> </amp-analytics>
代码说明
on: "click":设置触发器监听点击事件selector: "a":限定只追踪锚点标签的点击行为request: "event":指定发送Google Analytics的事件追踪请求eventLabel: "${clickText}":将点击的锚点文本作为事件标签传递,这样在GA后台的事件报告里,就能看到每个锚点点击对应的文本内容了
额外优化建议
- 如果需要把锚点文本存入GA的自定义维度,只需要在
vars里添加dimensionX: "${clickText}"(把X替换成你在GA后台配置的自定义维度索引) - 测试时可以用Chrome DevTools的AMP面板,查看发送的GA请求参数,确认
el(事件标签)字段是否正确携带了锚点文本 - 尽量保证锚点文本的唯一性和可读性,避免空文本或重复文本,这样追踪数据才更有分析价值
内容的提问来源于stack exchange,提问作者gauti
相关产品推荐
相关产品推荐

