facebook - 为什么 Facebook 返回错误的页面(影响 Facebook 点赞和分享 URL)?

标签 facebook facebook-like

当我们第一次发布博客文章时,Facebook 经常(但并非总是)对页面内容感到困惑。具体来说,如果您尝试使用博客页面上的“赞”按钮,或者如果您尝试通过个人资料上的“分享”链接进行分享,Facebook 将看到根博客页面,而不是实际的帖子页面。

例如,我们最近发布了: http://thisorthat.com/blog/2010-song-of-the-year-round-1-results

如果用户“喜欢”它,它会返回标题: "http://thisorthat.com/blog "

当您通过 FB Linter 运行帖子 URL 时,您可以看到问题。 "http://developers.facebook.com/tools/linter?url=http://thisorthat.com/blog/2010-song-of-the-year-round-1-results "

在调试部分,它显示了额外的 og:title、og:url、描述和 og:image(调试部分的最后 4 行)。这是根目录中的元数据。我们无法弄清楚的是为什么。为什么 Facebook 在页面上看到正确的元数据,然后还从根目录中提取元数据(并错误地使用它来填充“赞”按钮和共享 URL 工具的数据)?

另一个奇怪的地方。几天后,FB“想通了”。当然,到那个时候查看帖子的人相对较少。

更新——我想再次感谢 Peter Bailey 的回答,但我们还发现在“赞”按钮起作用之前我们还必须解决另一个问题。

问题是我们在尚未发布的帖子上显示了 Facebook 的“赞”按钮。问题在于 FB 无法解析 URL 并“猜测”正确的 URL。在我们的例子中,它总是猜测 thisorthat.com/blog。不幸的是,它随后会将该猜测缓存数天,并且 Linter 无法清除该缓存。所以最终的解决方案是按照 Peter 的建议修复 og:type,同时从博文预览中删除“赞”按钮。非常重要的一点是,您不要在页面发布前向 FB 展示它,否则请更改 URL。

最佳答案

很确定问题出在您的 Open Graph 类型上。

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

根据 the documentation

Use article for any URL that represents transient content - such as a news article, blog post, photo, video, etc. Do not use website for this purpose. website and blog are designed to represent an entire site, an og:type tag with types website or blog should usually only appear on the root of a domain.

关于facebook - 为什么 Facebook 返回错误的页面(影响 Facebook 点赞和分享 URL)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4738616/

相关文章:

javascript - 使用 Javascript 将动态内容共享到 Facebook 新闻提要的最简单方法?

facebook - cfhttp 多部分和 facebook

facebook - 如何删除我开发的 Facebook 应用程序?

php - 在哪里可以找到 Facebook cookie?

ajax - 将类似 facebook 的按钮与动态加载的内容集成

Facebook Like 按钮在我的网站上喜欢 Facebook 页面,而不是我的网站

Facebook 图片 URL 已过期

java - 通过 Jsoup 登录 Facebook

android - 是否可以在移动应用程序中放置一个 Facebook 点赞按钮,并且在使用时会喜欢我的网站网址?

jquery - Fancybox 调整大小以适合内容,无标题