我創建了一個視頻頁面,使用數據庫動態加載視頻,而文件存儲在服務器上。視頻預先加載在頁面上,並且數據可以被喜歡併發布到Facebook上,而不會有任何問題。點擊新的縮略圖時,我希望Facebook Like信息更改爲新的視頻內容(標題,網址和圖像)。 我找了一個解決方案,並且有許多類似的解決方案,但他們添加FB.XFBML.parse();
的簡單解決方案對我來說並不合適。 更新我的meta標籤,當Ajax調用回來成功使用:Facebook更新通過Ajax - 不是簡單的問題
$("meta[property=og\\:title]").attr('content', videoTitle);
$("meta[property=og\\:url]").attr('content', "www.mySiteURL.com/index.php?videoID="+videoID);
$("meta[property=og\\:image]").attr('content', "www.mySiteURL.com/images/video/"+videoImageName);
但是當我運行這些設置之後解析的代碼,我看到按鈕刷新,但梁具有相同的內容。 我可以看到meta標籤實際上使用Firebug更新。只是FB按鈕不能正確地重新發送頁面信息發送給FB。我在我的html標籤中設置了命名空間,並且還設置了其他的og:metas,但這些是我需要重新抓取的三個。
我在一篇文章中看到有人在主頁面上直接使用了類似於ajax.complete(function(){FB.XFBML.parse();});
的東西,我不記得確切的代碼,但這個想法是一樣的,但它仍然不起作用。我想在我的ajax函數中運行它,成功就足夠了。
我錯過了什麼?
任何幫助將不勝感激!
謝謝。
編輯: 我應該補充一點,每個視頻都有自己的直接URL,插入到og:url中,因爲它們都是通過ajax加載的。 當我使用這些獨特的URL之一時,Facebook Linter/Object Debugger向我顯示每個視頻的所有正確數據,這只是一個刮擦問題 - 至少,由於我對此有限的知識,這就是它對我來說似乎是什麼。
當您爲該視頻添加特定網址時,[Facebook的調試工具](https://developers.facebook.com/tools/debug)是否會獲取標籤?你不是用Javascript創建元標籤,對吧?它看起來在問題中看起來很像,但是你也會說每個視頻都有自己的URL--所以URL應該將meta標籤返回給抓取工具,並且你會將類似按鈕指向該URL,並且將Like動態按鈕,而不是頁面上的元標記 – Igy
謝謝!我瞭解到,我只需更改元標記,並完全忽略更新Like按鈕代碼中的href。我現在更新該代碼,解析完美。我的meta標籤已經存在,只能通過jQuery進行更改 - 不過現在不是那麼重要。 如果您將您的評論發佈爲解決方案,我可以接受它作爲最佳解決方案。 再次感謝! – acarito
當然;我會去做 – Igy