假设我有几个<amp-video>
元素并且我想发送触发器video-play
[https://github.com/ampproject/amphtml/blob/master/extensions/amp-analytics/amp-video-analytics.md]的玩家事件,并且我想将数据变量作为查询参数发送给房屋分析。
按预期发送click事件,并填写所有查询参数。 但是,视频视图事件与除video_id之外的所有查询参数一起发送。
有什么建议吗?
例如: `
<amp-video class="myVideo" autoplay loop width="640" height="360" layout="responsive" data-vars-video-id="123456" poster="...">
<source src="....mp4" type="video/mp4" />
<div fallback>
<amp-img src="...jpg" width="16" height="9" layout="responsive"></amp-img>
</div>
</amp-video>
...
<amp-analytics>
<script type="application/json">
{
"requests": {
"event": "https://counter.exmple.io/_track?event=${eventType}&url=${canonicalUrl}&user=CLIENT_ID(ampCid)&video_id=${videoId}"
},
"triggers": {
"minVideoPlay": {
"on": "video-play",
"selector": ".myVideo",
"request": "event",
"vars": {
"eventType": "video-view"
}
},
"minClick": {
"on": "click",
"selector": ".myVideo",
"request": "event",
"vars": {
"eventType": "click"
}
}
},
"transport": {
"beacon": true,
"xhrpost": true
}
}
</script>
</amp-analytics>
`
答案 0 :(得分:0)
我查看了amp-analytics variables docs,我认为此时只有click
和visible
个事件可以使用data-vars-*
个属性。
变量作为数据属性
对于以下事件类型,变量可以作为元素级数据属性的一部分传递
- 可见
- 点击
在AMP Project GitHub上免费to open a feature request,以便对click
和visible
以外的分析事件进行数据变量替换。另一种方法可能是视频ID作为标准视频分析变量的功能请求,因为几乎所有视频都有ID,至少可以是URL。
作为现在的解决方法,您可以为页面上的每个视频ID创建单独的视频分析触发器,并在vars
块中手动指定ID。