google-tag-manager - 正则表达式表查找不适用于 Click Element 变量
问题描述
我创建了一个正则表达式查找表变量,以基于包含特定字符串的 Click Element 输出文本。但是,尽管字符串肯定在 Click 元素中,但该变量仍显示为 null。任何人都可以帮忙吗?
这是我的正则表达式查找表变量 这是显示 null 的调试窗口(操作字段是正则表达式表变量应该填充的位置)
这是标签的触发器, 我从 Click Element 尝试了各种不同的字符串,但没有运气。
标签的触发器基于相同的字符串,并且触发器有效,这只会增加我的困惑。
我觉得问题一定很明显,但我不知所措。
解决方案
我也为此苦苦挣扎,直到我意识到“点击元素”实际上是一个对象,而不是字符串。它基于gtm.element
.datalayer
因此,为了做到这一点,您需要创建一个自定义数据层变量,以更准确地定位特定的子键。
要了解我的意思,请在新选项卡中打开一个链接,然后在datalayer
浏览器控制台中输入,然后按 Enter。你会看到类似的东西:
3:
event: "gtm.click"
gtm.element: a#mylinkclass.my-class.something.else
accessKey: ""
ariaAtomic: null
ariaAutoComplete: null
ariaBusy: null
ariaChecked: null
ariaColCount: null
ariaColIndex: null
etc....
因此,您必须创建自定义变量来定位您想要的键。例如,您创建的数据层变量gtm.element.className
将返回my-class something else
link <a href="/my-link-here/" class="my-class something else" id="mylinkclass">Link Text</a>
。
使用这种方法,我能够创建一个正则表达式查找表,就像您尝试做的那样。
这是一篇文章,对上述一些内容进行了更详细的介绍:
https://www.analyticsmania.com/post/click-element-variable-in-google-tag-manager/
推荐阅读
- java - Peek() 真正看到元素流过管道中的某个点
- apache-camel - camel-restdsl-swagger xml 生成找不到所需的方法 allowableValues(String)
- nginx - 是否有一个库(任何语言)来将 nginx.conf 解析为对象?
- java - 如何在 GET 请求中识别地址内的参数是什么?request.getParameterMap() 总是返回 null
- android - 菜单按钮有时只会发出点击声
- linux - 为什么一段时间后的代码是真的;做 ...; done 循环从未在 bash 中调用过?
- firebase - 如何在颤动中发送通知
- php - \Q 和 \E 是否应该在 PCRE 中转义分隔符?
- ios - Xcode 10 应用上传卡在“正在协商连接...”
- python - 安装要求时 pip 被杀死