我尝试在Google Analytics 4中基于现有事件的参数(form_id)创建自定义事件。我的目标是将多种形式组合成一个事件。
当我将GA4中的过滤条件设置为“contains”并指定单个数字ID(例如,1562),事件被正确发送。但是,当我切换到form_id的正则表达式时(例如,“matches regexp”,然后是1562),就会出现问题|在这种情况下,当GTM标签确实激发时,事件不被发送到GA 4。我在两个场景中测试了ID=1562的相同表单。
控制台显示错误:“事件处理在增强期间中止。”
我已经排除了其他因素,并确认问题与此RegExp条件有关。根据文档,以这种方式使用正则表达式应该是有效的。
任何关于什么可能导致这个问题的见解将不胜感激。
working configurationnon-working configuration
2条答案
按热度按时间toe950271#
更新:问题已解决
我想更新这个问题,以通知任何面临类似问题的人,我已经设法解决了它。
问题的关键在于,
form_id
参数是一个数值。Google Analytics 4中的正则表达式在尝试匹配数值时无法正常工作。解决方案是在应用正则表达式之前将变量转换为字符串。具体来说,我修改了我的JavaScript代码,其中
formId
是这样生成的:进行此调整后,正则表达式按预期工作,事件被正确发送到GA4。
lnxxn5zx2#
尝试从GTM创建您的自定义事件。我的意思是你需要创建一个Tag并设置相关参数。然后,为form-id创建一个用户定义的变量,并定义如何将值设置为该变量(例如,如果您通过JavaScript发送该值,或者该值是dataLayer值)。
在我的例子中,在下面的照片中,你可以看到JS_storeIdVariable作为user_defined变量,我选择它来从自定义的
JavaScript
(JS)函数中获取值。请记住,在本例中,我在前端将值发送给名为storeId的变量,以便此函数可以读取该值,类似于然后,作为您创建的
Tag
的触发器,您应该创建一个Trigger
,其中您想要的过滤器适用于此处。做一些像下面的照片但是你需要根据你的需要设置值:还要注意触发器类型,并选择对您的案例有意义的内容。