2011-09-28 159 views
0

可能重複:
How does Facebook Sharer select Images?Facebook的像Meta標籤不顯示正確的圖像

我使用JavaScript來設置OG元標記:值和FB調試器告訴我,我需要明確設置網址,標題和圖片的元標記。我看到在Firebug中正確顯示元標記 - 它們在那裏,但FB和Like按鈕由於某種原因沒有看到它們。這裏的JS:

function setMT(metaName, name, value) { 
var t = 'meta['+metaName+'='+name+']'; 
var mt = $(t); 
if (mt.length === 0) { 
    t = '<meta '+metaName+'="'+name+'" />'; 
    mt = $(t).prependTo('head'); 
} 
mt.attr('content', value); 
} 

和jQuery的文件準備好我設置的meta標籤

setMT('property', 'og:title', 'PAGE_TITLE'); 
setMT('property', 'og:url', 'CURRENT_URL'); 
setMT('property', 'og:image', 'IMAGE_URL'); 

任何人都知道,如果FB不喜歡我的方法?我無法爲這些元標記設置硬值,它們是在電子商務平臺上動態生成的,所以我需要在模板中創建VARS並使用jQuery將它們傳遞到創建元標記的頁面內容以及將它們預先添加到文檔的HEAD中。在這一張上搔一搔頭。

回答

0

JavaScript只在用戶的瀏覽器中工作。 Facebook開放圖爬行器(和基於它的調試器)將您的頁面服務器調用到服務器,並且不解釋任何javascript。因此他們看不到您的標籤。您應該使用任何服務器端語言(如php或asp.net等)動態設置它們。