6

我已经在我的网站上实现了 Open Graph 标签和 Twitter Card 标签。Twitter Card 标签验证为 HTML5 的唯一方法是将它们从 ...name="twitter:card"... 更改为 ...property="twitter:card"... 但是,这会导致 Facebook 的 Open图形调试器:

应该修复的开放图警告无关属性:这种类型的对象不允许名为“twitter:card”的属性。

Open Graph 标签、Twitter Card 标签和 HTML5 是否不兼容?

http://developers.facebook.com/tools/debug

4

3 回答 3

5

正如@ajax 提到的url,现在这样做的方式是:

<meta name="twitter:card" content="summary" />
<meta name="twitter:site" content="@nytimesbits" />
<meta name="twitter:creator" content="@nickbilton" />
<meta property="og:url" content="http://bits.blogs.nytimes.com/2011/12/08/a-twitter-for-my-sister/" />
<meta property="og:title" content="A Twitter for My Sister" />
<meta property="og:description" content="In the early days, Twitter grew so quickly that it was almost impossible to add new features because engineers spent their time trying to keep the rocket ship from stalling." />
<meta property="og:image" content="http://graphics8.nytimes.com/images/2011/12/08/technology/bits-newtwitter/bits-newtwitter-tmagArticle.jpg" />
于 2016-05-23T09:11:32.457 回答
4

您使用什么 HTML5 验证器工具?我不知道任何可以正确处理此类标记的方法。到目前为止,W3C 验证器甚至无法正确支持微数据 :) 所以一般建议是使用 service-related-validator 进行服务特定标记。

关于兼容性 - 它们都是兼容的。 在这里您可以找到关于 HTML5 中的 RDFA 支持的文档(opengraph 实际上是 RDFA)。 这里是关于描述新的元名称(这就是 twitter 卡的实现方式)。

但你真正需要的只是这个:) 它是关于 Twitter 看到的 Open Graph 和 Twitter Cards 关系的。

于 2013-05-13T15:44:43.263 回答
1

我有同样的问题。问题是 Twitter 和 Facebook 还没有就 opengraph twitter 命名空间达成一致,或者只是 Twitter 没有公共命名空间。无论如何,我希望这不会阻止 Facebook 正确索引这些页面。

于 2013-08-14T15:22:42.423 回答