我希望Facebook分享弹出应该来自Google跟踪代码管理器。 我已经做了什么:
在GOOGLE TAG MANAGER中
1.我创建了一个名为' Facebook SDK'的自定义HTML标记。包含这个:
<script type="text/javascript" language="JavaScript">
window.fbAsyncInit = function() {
FB.init({
appId : '<app-id>',
xfbml : true,
version : 'v2.3'
});
};
(function(d, s, id){
var js, fjs = d.getElementsByTagName(s)[0];
if (d.getElementById(id)) {return;}
js = d.createElement(s); js.id = id;
js.src = "//connect.facebook.net/en_US/sdk.js";
fjs.parentNode.insertBefore(js, fjs);
}(document, 'script', 'facebook-jssdk'));
</script>
2.我在网页浏览时触发了此标记。
4.我创建了一些数据层变量,稍后我将需要这些变量:
**Name** **Data Layer Variable Name**
Thread Link threadLink
Thread Title threadTitle
Company Icon companyIcon
Facebook Share Caption facebookShareCaption
3.我创建了另一个名为&#39; Facebook Share&#39;:
的自定义HTML标记 <script>
FB.ui({
method: 'feed',
link: {{Thread Link}},
picture: {{Company Icon}},
name: {{Thread Title}},
caption: {{Facebook Share Caption}}
});
</script>
4.在此标签的预先设置中,在Tag Sequencing选项中,我选择了这个:
Fire a tag before Facebook Share fires
Setup Tag: Facebook SDK
and I chose 'Don't fire Facebook Share if Facebook SDK fails'.
5.我创建了一个名为&#39; Facebook Share Button&#39;将事件名称设为&#39; fb_share_button_clicked&#39;。 6.我设置了Facebook Share Button&#39;触发此标记。
来源代码
1.要设置数据层,我在GTM容器代码段上方的页面顶部添加了以下代码片段:
<script>
dataLayer = [{
'threadLink': 'LINKTO/ABCDEF',
'threadTitle': 'high-ABCDEFA BCDEF ABCDEFABCD EFABCDEFABCDEFABCDEF',
'companyIcon': 'PATHTO/icon',
'facebookShareCaption': 'Lorem ipsum dolor sit amet, consectetur adipiscing'
}];
2.I推自定义事件&#39; fb_share_button_clicked&#39;当用户点击网站上的Facebook图标时变量
dataLayer.push({
'event': 'fb_share_button_clicked'
];
我的问题是:
我看到非触发自定义HTML标记中的有线值&#39; Facebook Share&#39;像:
名:google_tag_manager [&#39;为XXXXX&#39;]宏(\&#39; 111111111111&#39)
如果有人能指导我,我将非常感激。
答案 0 :(得分:0)
你的最后一段代码不正确:
dataLayer.push({
'event': 'fb_share_button_clicked'
];
应该是:
dataLayer.push({
'event': 'fb_share_button_clicked'
});
与此同时,您在控制台中看到了什么样的错误?