2011-04-23 87 views
0

我增加了一個標準的Facebook像按鈕我的網頁:問題與Facebook類似按鈕

function CreateNewLikeButton() { 
    var elem = $(document.createElement("fb:like")); 
    elem.attr("width", "200"); 
    elem.attr("layout", "standard"); 
    elem.attr("font", "arial"); 
    $("div#fb-root").empty().append(elem); 
    FB.XFBML.parse($("div#fb-root").get(0)); 
} 

當我點擊它,我收到,指出當前的URL不可用錯誤。

當前的URL是http://localhost ....

怎麼辦?

回答

0

您還需要擁有「href」屬性。

function CreateNewLikeButton() { 
    var elem = $(document.createElement("fb:like")); 
    elem.attr("width", "200"); 
    elem.attr("layout", "standard"); 
    elem.attr("font", "arial"); 
    elem.attr("href","http://site.com/page.php"); 
    $("div#fb-root").empty().append(elem); 
    FB.XFBML.parse($("div#fb-root").get(0)); 
} 

你應該把你在的「href」指定的頁面的<head>部分opengraph標籤,這樣你就可以管理你的意見。

欲瞭解更多信息,請訪問 facebook developers documentation

+0

謝謝您的回答。我沒有使用href,因爲頁面的url包含querystring,所以在設計時我無法知道確切的url。我添加了元標記,但仍收到錯誤消息。我必須提到,雖然我收到了這條消息,但鏈接保存在facebook用戶檔案下 – user342319 2011-04-24 14:04:49

0

兩個問題:

  1. 你需要告訴Facebook在一些時尚是什麼網址被「喜歡」

  2. Facebook需要能夠訪問該網址。如果你的URL是「本地主機」,那麼Facebook將無法連接到它。從Facebook Social Plugin page for the Like Button

什麼時候Facebook的刮我的網頁?

Facebook需要刮你的頁面,以瞭解如何在網站上顯示它。 Facebook每24小時刮一次你的頁面,以確保屬性是最新的。當Open Graph頁面的管理員點擊Like按鈕並將URL輸入到Facebook URL Linter中時,頁面也會被抓取。 Facebook會在您的網址上觀察緩存標頭 - 它會按照首選項的順序查看「過期」和「緩存控制」。但是,即使您指定的時間較長,Facebook也會每24小時刮一次頁面。 刮板的用戶代理是:「facebookexternalhit/1.1(+ http://www.facebook.com/externalhit_uatext.php)」