我在ASP.NET网络表单上建立了一个在线商店。当客户进入结账页面时,有一个表格,他们必须提供他们的详细信息,如邮资地址等。填写表格后,他们必须点击“立即付款”按钮,提示进入Paypal结账页。
我需要跟踪Google AdWords转换统计信息的点击次数。
跟踪点击的常用代码如下所示:
// some data
goog_report_conversion = function(url) {
goog_snippet_vars();
window.google_conversion_format = "3";
var opt = new Object();
opt.onload_callback = function() {
if (typeof(url) != 'undefined') {
window.location = url;
}
但是由于网站的实现方式,目标链接是动态生成的,所以我无法将其作为“goog_report_conversion”的参数传递。
所以我稍微将转换功能改为:
// some data
goog_report_conversion = function(id) {
goog_snippet_vars();
window.google_conversion_format = "3";
var opt = new Object();
opt.onload_callback = function() {
if (typeof(id) != 'undefined') {
// I use custom function to trigger click on the actual button
event_fire(document.getElementById(id), 'click');
}
}
我有这个HTML结构:
<span class="GeneralFormButton" onClick="goog_report_conversion('submit_all')">Pay Now</span>
<input type="button" name="submit_all" value="Pay Now" onclick="this.disabled=true; this.value='Plase wait';__doPostBack('submit_all','')" id="submit_all" style="display: none;" />
使用<span>
来触发转换功能,然后在实际提交按钮上模拟“点击”。
效果很好,客户被重定向到Paypal。但是,转化不会被跟踪,而且在Google AdWords帐户中,我的“Pay with Paypal”选项被标记为“未验证”(已推迟超过24小时)
我测试了在提交时向谷歌发送了哪些数据:
https://www.googleadservices.com/pagead/conversion/*correct conversion id*/?random=1459744659796
&cv=8
&fst=1459744659796
&num=1
&fmt=3
&label=*correct conversion label*
&guid=ON
&u_h=800
&u_w=1280
&u_ah=777
&u_aw=1280
&u_cd=24
&u_his=11
&u_tz=570
&u_java=false
&u_nplug=5
&u_nmime=7
&frm=0
&url=http%3A//www.website.com/store_checkout2.aspx%3Fpay_service%3DPayPal%26promo_code%3D%26voucher%3D
&ref=http%3A//www.website.com/store_checkout2.aspx%3Fpay_service%3DPayPal%26promo_code%3D%26voucher%3D
&tiba=Contact%20and%20Delivery%20Address
&async=1
转化ID和标签是正确的,其余数据似乎也没问题,但转换仍然没有被跟踪。我只是无法弄清楚原因。
我哪里出错了,您认为有什么需要改变?
非常感谢
答案 0 :(得分:0)
事实证明,该表单之前从未完成并发送过,因此Google无法验证该代码。当我测试响应数据时,我发送了表单并且代码得到了验证。