从iFrame小部件跟踪广告词转换
Tracking Adwords Conversions from an iFrame Widget
网站
Saritias
形势
我的客户希望跟踪谷歌广告词的转换。当客户点击广告,到达网站,然后使用第三方预订小部件(ResDiary)预订桌子时,就会实现转换。
问题
小部件在iframe中,所以据我所知,这意味着插入到小部件中的标签管理器代码无法在父窗口中看到谷歌设置的Adwords相关cookie。
我怎样才能让它发挥作用?
我的解决方案
我在Tag Manager中创建了2个帐户。
- 对于主站点
- 一个用于小部件站点
小部件站点包含一个自定义HTML标记,该标记将事件发送到父iframe:
<script>
var topOrigin = 'http://www.saritas.com.au';
if (window.postMessage) {
window.parent.postMessage('confirmation', topOrigin);
}
</script>
我将触发器设置为在小部件中所需的确认页面上触发。
对于主站点,我再次使用了一个自定义HTML标记,该标记包含一个事件侦听器,该侦听器利用Google异步转换库,并在触发侦听器时触发事件。
<script type="text/javascript" src="http://www.googleadservices.com/pagead/conversion_async.js" charset="utf-8"></script>
<script>
/* <![CDATA[ */
var google_conversion_id = 952604500;
var google_conversion_language = "en";
var google_conversion_format = "3";
var google_conversion_color = "ffffff";
var google_conversion_label = "eMKnCNzU5F8Q1K6exgM";
var google_remarketing_only = false;
/* ]]> */
function trackConv(google_conversion_id, google_conversion_label) {
window.google_trackConversion({
google_conversion_id: google_conversion_id,
google_remarketing_only: false
});
}
// Replace with your domain here.
var allowedOrigins = ['https://widget-au.resdiary.com'];
function xDomainHandler(event) {
event = event || window.event;
var origin = event.origin;
// Check for the whitelist.
var found = false;
for (var i = 0; i < allowedOrigins.length; i++) {
if (allowedOrigins[i] == origin) {
found = true;
break;
}
}
if (!found) return;
// Might be a different message.
if (event.data != 'confirmation') return;
trackConv(google_conversion_id, google_conversion_label);
}
if (window.addEventListener) {
window.addEventListener('message', xDomainHandler, false);
} else if (window.attachEvent) {
window.attachEvent('onmessage', xDomainHandler);
}
</script>
我将触发器设置为小部件出现的单个页面。
相关文章:
- 如何在JavaScript中将字符串转换为函数引用
- 如何在Javascript中将JSon对象转换为数组
- 使用JS将数组转换为json对象
- 如何使用json将对象列表从java转换为javascript
- 偶尔结结巴巴地说“;堆叠的”;translate()上的转换(v4.0.0-alpha40)
- 为什么在单独的函数中应用时转换会闪烁/断断续续(D3)
- 在Javascript中转换对象数组
- 将数字转换为一定数量的硬币
- 将纯文本URL转换为可单击链接
- 当图像转换为本地存储的DataURL时,EXIF被删除
- 如何使用js将SNAPSHOT内部版本号转换为3位数的整数
- 如何将TypeScript对象转换为普通对象
- 谷歌广告词转换电话
- 从iFrame小部件跟踪广告词转换
- 一个页面上有多个goog_report_conversion标签-谷歌广告词转换跟踪
- 如何在knockoutjs按钮点击事件中添加谷歌广告词转换跟踪代码
- 谷歌广告词转换跟踪的动态插入在safari中爆炸式增长
- 谷歌标签管理器中回调功能上的广告词转换跟踪
- 谷歌广告词转换跟踪集成在joomlaphp文件中
- 谷歌广告词服务器端转换跟踪