我在example.com下有一个wordpress网站 在使用调用iframe的html小部件的地方:
<iframe src="https://example.com/iframe.html" style="border:0px #ffffff none;" name="myiFrame" scrolling="no" frameborder="1" marginheight="0px" marginwidth="0px" height="650px" width="850px" allowfullscreen></iframe>
我制作了一个位于example.com/iframe.html
下的iframe文件此文件已预先配置为跟踪2次点击事件-我使用GTM课程构建了数据层。
这些是我的iframe.html文件中的跟踪代码:
<script>
window.dataLayer = window.dataLayer || [];
</script>
<!-- Google Tag Manager -->
<script>
(function(w, d, s, l, i) {
w[l] = w[l] || [];
w[l].push({ "gtm.start": new Date().getTime(), event: "gtm.js" });
var f = d.getElementsByTagName(s)[0],
j = d.createElement(s),
dl = l != "dataLayer" ? "&l=" + l : "";
j.async = true;
j.src = "https://www.googletagmanager.com/gtm.js?id=" + i + dl;
f.parentNode.insertBefore(j, f);
})(window, document, "script", "dataLayer", "GTM-WDSS4T8");
</script>
<script>
setTimeout(() => {
let phoneBtns = document.querySelectorAll(".phone-btn");
let wazeBtns = document.querySelectorAll(".waze-icon");
function btnClick(which) {
which.forEach(btn => {
var btnName = btn.getAttribute("data-name");
btn.addEventListener("click", function() {
if (btn.getAttribute("class") === "waze-icon") {
window.dataLayer.push({
event: "wazeClick",
store: btnName
});
} else {
window.dataLayer.push({
event: "phoneClick",
store: btnName
});
}
});
});
}
btnClick(phoneBtns);
btnClick(wazeBtns);
}, 1000);
</script>
<!-- Google Tag Manager (noscript) -->
<noscript
><iframe
src="https://www.googletagmanager.com/ns.html?id=GTM-WDSS4T8"
height="0"
width="0"
style="display:none;visibility:hidden"
></iframe
></noscript>
作为独立文件-iframe.html可以很好地工作,并且正是我在事件和分析报告方面所需的工作方式。
从父级加载iframe时-我遇到了一些问题: (请注意,所有设置都是通过iframe.html文件完成的,而wordpress主页本身只有一行跟踪代码)
父网站即将在Google广告上发布, 在Google Analytics(分析)上,所有流向父级的流量都被视为直接/无流量,尽管事件会在Google Analytics(分析)实时屏幕上弹出-我能否在广告系列中正确看到转化?
我也应该在父网站上实现相同的GTM代码吗?
要使其在归因和iframe与事件之间的正确链接>父级>谷歌分析方面需要做什么?
感谢您的帮助