У нас есть одностраничное приложение Angular с пикселем Facebook, которое вводится через GTM. В первой инъекции мы передаем следующее:
<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 с заполненными надлежащими размерами (путем просмотра источника страницы).
В ПЕРВОМ просмотре страницы HIT в Facebook размеры присутствуют в вызове (при просмотре вкладки сети), но при ПОСЛЕДУЮЩИХ просмотрах страниц обращение отправляется в Facebook, НО никакие измерения не отправляются, даже если они присутствуют в коде добавлен к DOM.
По большей части эти размеры не меняют попадание на попадание, но могут меняться в зависимости от действий, которые пользователь выполняет во время своих сеансов.
Есть ли какие-либо мысли относительно того, почему последующие обращения НЕ включают специальные размеры?