- xml - AJAX/Jquery XML 解析
- 具有多重继承的 XML 模式
- .net - 枚举序列化 Json 与 XML
- XML 简单类型、简单内容、复杂类型、复杂内容
我正在尝试使用 GTM 在我的网站上运行 Adwords 调用转换跟踪。一切都在 Adwords 端设置(附加电话信息 + 来自网站转换的电话),但替换功能仍然无法正常工作。
<script type="text/javascript">
// the code from adwords, loads the _googWcmGet function
(function(a,e,c,f,g,b,d){var h={ak:"XXXXXXX",cl:"XXXXXXXX"};a[c]=a[c]||function(){(a[c].q=a[c].q||[]).push(arguments)};a[f]||(a[f]=h.ak);b=e.createElement(g);b.async=1;b.src="//www.gstatic.com/wcm/loader.js";d=e.getElementsByTagName(g)[0];d.parentNode.insertBefore(b,d);a._googWcmGet=function(b,d,e){a[c](2,b,h,d,null,new Date,e)}})(window,document,"_googWcmImpl","_googWcmAk","script");
// my callback to replace the number
var replaceNumber = function (formatted_number, unformatted_number) {
console.log("replaceNumber() called");
}
var getNumber = function () {
var links = document.getElementsByTagName("a");
var oldNumber = null;
for(var i=0; i<links.length; i++) {
if( links[i].href.indexOf("tel") > -1 ) {
var el = links[i];
var oldNumber = el.innerHTML.split("<")[0];
}
}
// console.log(oldNumber); -> 123-456-7890
return oldNumber;
}
window.onload = function() {
_googWcmGet( replaceNumber, getNumber() );
};
</script>
getNumber() 返回要替换的正确电话号码(格式:123-456-7890),但 replaceNumber 从未被调用。这看起来与示例非常相似,只是电话号码是通过函数检索的,而不是静态提供的。
为什么没有调用 replaceNumber?
最佳答案
事实证明,回调仅在访问者来自 Adwords 广告时运行,这意味着您需要生成付费点击才能进行测试。
从文档来看,调用跟踪可以用来跟踪:
"calls people make from your website after clicking your ad ..."
它很微妙,但它就在那里。为了进行测试,您需要点击您自己的 Adwords 广告。然后,保存 URL(带有标签等),以便您以后可以使用相同的 URL 继续测试,而不会产生更多的点击费用。如果您知道 URL 是什么,您可能甚至不需要点击广告。
编辑:@dorian 下面的评论非常有用,我将其包含在此处以提高知名度,但也请给他点赞。
Probably a bit late, but there's an extremely helpful debugging mode which you can activate by appending #google-wcc-debug to the URL of the page where you have activated call tracking. Unfortunately this debug mode seems to be documented nowhere.
关于javascript - _googWcmGet 回调无法通过具有动态电话号码的 GTM 工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27607431/
几周前,我将我的 Google 标签管理器容器迁移到 GTM v2(Android 和 iOS)。自从我这样做以来,我一直无法设置任何移动分析实验。 我已将容器连接到分析 View ,并在创建实验时选
我遇到了问题,我似乎无法找到解决方法。情况如下营销部门想整合GTM。这很好,因为他们希望完全控制他们希望集成的不同第三方提供商。但是为了实现这一点,他们希望能够跟踪页面上的所有点击。 他们告诉我,目前
我想创建一个postgres-xl 集群。该集群包括 5 个节点、1 个 GTM、2 个 Coordinator 和 2 个 Datanode。以下是节点的详细信息 GTM: hostname=l
我正在客户网站上实现 Google 跟踪代码管理器脚本。 我遇到了一个随机问题:dataLayer 没有获得它的 gtm.dom 和 gtm.load 对象。它只有两个对象,一个包含我正在传递的一堆变
这是我在这个网站上的第一个问题,我很好奇是否有人可以帮助我。在 Google 跟踪代码管理器中,我尝试使用一些 jQuery 设置自定义 JavaScript 变量,该变量应返回特定数组中所有产品价格
我在我的 chrome 扩展页面中添加了这个 gtm 代码(由内容脚本和 iframe 注入(inject)) // (function(w,d,s,l,i){w[l]=w[l]||[];w[l].
在 GTM 中编写一个小的自定义 javascript 宏以在单击出站链接时设置类别值。大多数内部链接都是相对 URL。 function(){ var eventCat = ""; if({{ele
我在任何地方都找不到这个问题的答案。我正在尝试在 Google 跟踪代码管理器中设置触发器和事件标记,以便在内容存在时触发。本质上,我正在 Google Analytics 中为产品 View 创建一
坐在一个我正忙着标记的网站上,上面有这个凌乱的小面包屑...... li class="home" itemprop="itemListElem
我的目标是在 Firebase Analytics 中获取应用数据,在 Google Universal Analytics 中获取其他自定义数据和应用数据。 我的问题是我是否在我的应用上安装 Fir
GTM 已启动并正在运行,主 UA 标记与 ClickListener 标记一起就位。 为了减少宏的数量,我使用 dataLayer 变量宏来表示事件类别、操作、标签、值和交互,因此它们可以用于许多规
为什么我的 GA View 中没有任何数据?编译 'com.google.android.gms:play-services-location:9.4.0' 所有写入/复制都像手册中一样(https:
我正在尝试跟踪使用 GTM 单击按钮后出现的元素,但使用元素可见性触发器根本不会触发。我为一些点击设置了 GTM,它运行良好,但我对这个可见性触发器感到困惑。我尝试切换 Observe DOM cha
我正在尝试在 GTM 中设置一个悬停事件标记,而不对页面上的代码进行任何更改,因此纯粹是通过 GTM。 我尝试使用 GTM Hover Recipe来自 Bounteous,但我似乎无法触发自定义事件
我有Pageview Google 标签管理器中跟踪 SPA 页面浏览量的标签,与 this guide 中描述的标签相同.基本上它是 Universal Analytics 与在 History C
在网站 GTM 实现中,您可以使用 javascript 创建自己的自定义标签,因此只需使用 GTM 界面即可轻松设置对您自己的系统的 Web 服务调用等。 现在对于 Firebase - GTM 实
我正在尝试发送 screen-view hits至Google Analytics使用 Google Tag Manager ,但在实时 View 中,屏幕名称值显示为 (not set) .实际的屏
我目前有一个带有相关文章元素的表单,该元素在填写表单主题时建议用户相关文章。 我正在 try catch 单击相关文章的所有表单提交。 我创建了 2 个触发器和 2 个标签: 一旦用户点击其中一篇相关
我正在根据 google documentation 实现购买跟踪. 我对购买标签配置有一个小问题。 如果我使用提供的配置创建标签: Tag type : Universal Analytics Tr
我使用 Google 标签管理器已经有几个星期了。最近我有一个特殊的要求,我还没有找到答案。是否有可能多个容器共享同一个数据层?在两个容器的Js代码中,我试图给datalayer一个同名:结果比较出人
我是一名优秀的程序员,十分优秀!