2011-01-19 87 views
7

當我們第一次提出了一個博客帖子,Facebook的通常(但並不總是)無法瞭解該頁面是什麼。具體而言,如果您嘗試在博客頁面上使用Like按鈕,或者如果您嘗試通過個人資料上的共享鏈接進行分享,Facebook將會看到根博客頁面,而不是實際的帖子頁面。爲什麼Facebook返回錯誤的頁面(影響Facebook Like和Share URL)?

例如,我們最近發佈: http://thisorthat.com/blog/2010-song-of-the-year-round-1-results

如果用戶「喜歡」吧,它返回的標題: 「http://thisorthat.com/blog

當您運行通過FB短絨的帖子的網址,你可以看到問題。 「http://developers.facebook.com/tools/linter?url=http://thisorthat.com/blog/2010-song-of-the-year-round-1-results

在調試部分,它顯示了一個額外的:title,og:url,description和og:image(調試部分的最後4行)。這是根目錄的元數據。我們無法弄清楚的是爲什麼。爲什麼Facebook在頁面上看到正確的元數據,然後從根目錄中提取元數據(並且錯誤地使用它填充Like按鈕和Share URL工具的數據)?

另外一個怪胎。 FB在幾天後「將其計算出來」。當然,那個時候很少有人在看這個帖子。

更新 - 我要再次感謝彼得·貝利他的回答,但我們也發現,有是我們必須解決的Like按鈕的工作之前的另一個問題。

的問題是,我們對尚未公佈後顯示了Facebook的Like按鈕。問題在於,FB無法解析URL並「猜測」正確的URL。在我們的例子中,它總是猜測thisorthat.com/blog。不幸的是,它在幾天內緩存了這個猜測,並且該緩存不能被Linter清除。所以最終的解決方案是按照Peter的建議修正og:type,但也可以從博客文章預覽中刪除Like按鈕。在發佈FB之前不要顯示FB,或者如果你這樣做,更改URL是非常重要的。

回答

12

很肯定這是你的Open Graph類型這就是問題所在。

<meta content="website" property="og:type"/> 

the documentation

使用article任何網址 代表瞬態內容 - 如 新聞文章,博客文章,照片,視頻 等,不要使用website的 這目的。 websiteblog被 設計成表示整個網站, 用類型的og:type標籤websiteblog通常應該只出現在 根域的。

+0

我們剛剛作出修改,它似乎是現在的工作。非常感謝,彼得!幾個月來我們一直在苦苦掙扎! – 2011-01-19 22:03:08

相關問題