谷歌标签管理器不跟踪图像和图标上的链接点击

use*_*270 6 google-analytics google-tag-manager

在 Google Tag Manager 中,我将其设置为跟踪包含特定类的元素的点击数据,并在 Google Analytics 中记录事件。它似乎适用于文本链接,但如果在图像、图标等的链接中有另一个标签,我就会遇到问题。例如,以下内容可以正常工作:

<a href="link.html" class="track_this" data-tracking-info="my info">Click here</a>
Run Code Online (Sandbox Code Playgroud)

但这行不通:

<a href="link.html" class="track_this"  data-tracking-info="my info">
  <span class="icon click-here"></span>
</a>
Run Code Online (Sandbox Code Playgroud)

如果你点击文本,这样的事情会起作用,但如果你点击图标则不会:

<a href="link.html" class="track_this"  data-tracking-info="my info">
  <span class="icon click-here"></span> Click Here
</a>
Run Code Online (Sandbox Code Playgroud)

我知道我可以将“track_this”类添加到图标的跨度中,但在更复杂的场景中它会变得非常混乱。就像想象有一个带有图标的缩略图图像和它下面的一些文本都包装成一个标签。我必须将该类和跟踪信息放在图像标签、图标的跨度、文本的 div 等上。

有一个更好的方法吗?谢谢!

Jos*_*a T 9

如果我能看到您的 GTM 是如何设置的,我可以更明确地说明这一点,但我的猜测是您正在使用“所有元素”触发器来捕获这些链接点击,并过滤“点击类”或“点击元素”。问题在于,当链接标签 ( <a></a>) 包含另一个元素(例如 a )时<span>,即使触发您的链接打开,GTM 记录为接收点击的元素是跨度,而不是链接。

如果你想解决这个问题,有两个选项,其中任何一个都应该有效。

第一种是切换到使用“单击 - 仅链接”触发器类型,并过滤“track_this”类。对于这个触发器,GTM 允许点击事件“冒泡”,直到它们点击链接元素,然后它针对该链接而不是被点击的元素测试您的触发器。简单地使用这种触发类型应该适用于您的所有三个样本。

另一种选择是通过“单击 - 所有元素”触发器使用更高级的过滤器。如果您修改触发器使其在“某些点击”时触发,然后设置“点击元素匹配 CSS 选择器”的条件:

.track_this, .track_this *
Run Code Online (Sandbox Code Playgroud)

然后它将注册对具有 track_this 类的任何元素的单击,以及对这些元素内的任何元素的单击。