我们有一个单页 Angular 应用程序,其中包含通过 GTM 注入的 Facebook 像素。在第一次注入中,我们传递了以下内容:
<script>
!function(f,b,e,v,n,t,s){if(f.fbq)return;n=f.fbq=function(){n.callMethod?
n.callMethod.apply(n,arguments):n.queue.push(arguments)};if(!f._fbq)f._fbq=n;
n.push=n;n.loaded=!0;n.version='2.0';n.queue=[];t=b.createElement(e);t.async=!0;
t.src=v;s=b.getElementsByTagName(e)[0];s.parentNode.insertBefore(t,s)}(window,
document,'script','https://connect.facebook.net/en_US/fbevents.js');
fbq('init', '<OUR ID>'); // Insert your pixel ID here.
</script>
请注意,没有浏览量事件。然后,我们将一个自定义的“虚拟浏览量”事件推送到 GTM 数据层,该事件导致一个标签,该标签将浏览量发送到 Google Analytics(工作正常),并触发以下代码的注入:
<script>
fbq('track', 'PageView', {
dim1:{{dim 1 macro}},
dim2:{{dim 2 macro}},
dim3:{{dim 2 macro}}
});
</script>
在每个页面浏览中,上面的 fbq 被附加到 DOM 并填充了适当的尺寸(通过查看页面的源)。
在 FIRST 网页浏览 HIT 到 Facebook 时,维度存在于调用中(通过查看网络选项卡),但在 SUBSEQUENT 网页浏览中,点击发送到 Facebook,但没有发送维度,即使它们存在于代码中附加到 DOM。
在大多数情况下,这些维度不会因点击而改变,但可能会根据用户在整个会话期间所做的操作而改变。
关于为什么后续点击不包含自定义维度的任何想法?