我希望Facebook共享彈出窗口應該來自Google跟蹤代碼管理器。 我所做的已經:Google Tag Manager facebook share
Google代碼管理工具:
1.I創建一個名爲 '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.I在瀏覽量中爲此標記觸發。
4,我創建了幾個數據層變量這些我將在以後需要:
**Name** **Data Layer Variable Name**
Thread Link threadLink
Thread Title threadTitle
Company Icon companyIcon
Facebook Share Caption facebookShareCaption
3.我創建了另一個名爲 'Facebook共享' 自定義HTML代碼:
<script>
FB.ui({
method: 'feed',
link: {{Thread Link}},
picture: {{Company Icon}},
name: {{Thread Title}},
caption: {{Facebook Share Caption}}
});
</script>
4.In提前設置這個標籤,在標籤排序選項中,我選擇了這個:
Fire a tag before Facebook Share fires
Setup Tag: Facebook SDK
and I chose 'Don't fire Facebook Share if Facebook SDK fails'.
5.我創建了一個自定義觸發器na如'Facebook分享按鈕'有一個事件名稱爲'fb_share_button_clicked'。 6.我爲此標籤設置了「Facebook Share Button」觸發器。
以源代碼
1.To建立數據層,我添加下面的代碼段,以頁的GTM容器片段上方的頭:
<script>
dataLayer = [{
'threadLink': 'LINKTO/ABCDEF',
'threadTitle': 'high-ABCDEFA BCDEF ABCDEFABCD EFABCDEFABCDEFABCDEF',
'companyIcon': 'PATHTO/icon',
'facebookShareCaption': 'Lorem ipsum dolor sit amet, consectetur adipiscing'
}];
2.當用戶點擊網站上的Facebook圖標時,我推送自定義事件「fb_share_button_clicked」變量
dataLayer.push({
'event': 'fb_share_button_clicked'
];
個
我的問題是:
- 我得到 '未定義' 當我在JavaScript控制檯運行FB。
- 當我點擊Facebook的圖標,沒有Facebook共享彈出窗口,
- 自定義標籤的Facebook SDK「是在瀏覽量,但自定義標籤「Facebook共享」解僱不,當我點擊Facebook的圖標(在預覽模式下鋸)。
- 我看到自定義HTML標籤「Facebook共享」下「的標籤沒有被解僱本頁內容:」在預覽和調試模式,但事件'觸發
我看到在非有線值發射自定義HTML標籤「分享至Facebook '這樣的:
名稱:google_tag_manager' 宏(\ [ 'XXXXX]' 111111111111' )
,我將非常感激,如果有人能指導我。