如何使用 GTM 跟踪多个 iframe?

How to track multiple iframes with GTM?

我有一个 .NET 框架应用程序。此 Web 应用程序中有许多页面。

例如:

=======================================
About us      |
To-Do List    |      
user List     |    catch me if you can
dessert shop  |        o~(‾▿‾)~o
cloth shop    |
galleries     |
=======================================

但这不是SPA,如果我点击“待办事项列表”, 它将在右侧加载一个 iframe。 如果我点击“用户列表”,它会加载另一个 iframe。

所以当我在主页上嵌入 Google 标签管理器代码时,它只会跟踪我的菜单,不会跟踪其他 iframe 的活动。 我是否应该创建与我的 iframe 一样多的 google 标签管理器帐户?

您可以在 iframe 中创建更多 GTM 实例,但这会使实现变得更加复杂。

通常,在这种情况下,我们只是将 window 消息从 iframe 发送到父级 window,在那里它们被侦听器转换为数据层事件(可以由 GTM 在页面加载时部署),GTM 将为此监听并触发。

不要忘记在 window 消息中包含点击上下文。然后必须将上下文转换为数据层变量,并将其推送到与单击事件相同的对象中。

如果可以,请尽量不要通过 GTM 部署额外的代码,例如通过前端代码库部署侦听器。 GTM有最大尺寸,所以它包含的代码越少越好。