google plus不会显示来自xhtml文档的元信息片段

时间:2012-09-14 14:29:50

标签: xhtml google-plus schema.org rdfa

我一直在与此斗争已有一段时间了,但即使为什么也无法解决这个问题。采用这个简单的XHTML测试源:

<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
    <head>
        <title>foobar</title>
        <meta name="description" content="baz" />
    </head>
    <body vocab="http://schema.org/" typeof="Article">
        <h1 property="headline">Some title</h1>
        <p property="description">some arbitrary text</p>
        <p>and even more of it</p>
    </body>
</html>

(使用google plus进行测试时,这也是temporarily available here,您可以在这里找到plain html version

如果您将XHTML版本的链接粘贴到g +,您会发现它根本无法解析它。它只会显示链接。然而,似乎解析了HTML版本。两者都在rich snippet tester from google中解析得很好。更有甚者,我们有证据表明我们的XHTML网站丰富网页摘要用于谷歌搜索。

对于xhtml版本,内容类型正确地宣布为application/xhtml+xml,我无法找出任何其他问题。我已经尝试省略xml声明并使用XHTML 1.1严格doctype,但没有任何成功。

所以我的问题:

  1. 为什么g +在XHTML版本中不显示此文件的片段 ,即使facebook确实如此?
  2. 这可以以某种方式得到纠正,而不会丢弃XHTML,如果是这样,怎么做?

2 个答案:

答案 0 :(得分:0)

我猜解析器g +使用可能不支持XHTML,如果无法处理application / xhtml + xml MIME媒体类型,可能会失败。上次我听说g +和Google Rich Snippet测试工具没有使用相同的工具链,所以很有可能在Rich Snippet测试工具中工作的东西可能无法在其他地方工作,尽管如果它在测试工具中有效,这是一个好兆头。我认为将来Google会将所有产品与丰富的代码段测试工具的功能结合起来。

您是否有任何特定原因使用XHTML而不是HTML或HTML5作为text / html?

答案 1 :(得分:-1)

示例中的微数据似乎不是预期的格式。您可以在https://developers.google.com/+/plugins/snippet/

生成必要的微数据

注意缺少的itemprop,itemscope和类似的属性:

<body itemscope itemtype="http://schema.org/Product">
  <h1 itemprop="name">Shiny Trinket</h1>
  <img itemprop="image" src="{image-url}" />
  <p itemprop="description">Shiny trinkets are shiny.</p>
</body>