2012-07-08 69 views
1

我正在调试我网站上的Open Graph标签(example page)。我正努力修复error I'm getting from the Facebook Debug Tool。错误是:如何修复Open Graph标记中的“Parser Mismatched Metadata”错误?

分析器不匹配的元数据:
这个元数据不匹配输入的元数据解析器的结果。很可能,这是由于数据以意想不到的方式排序造成的,给出的属性只有单个值,或给定属性的属性值不匹配时会出现多个值。下面是输入属性,并没有经过解析的结果可知=>含量对:“文章:published_time => 2012-07-07”

我相信我格式化的文章:正确published_time标签according to the docs,在月和日的前四位是四位数的年份,并且按照年 - 月 - 日的顺序排列。它也以与例子相同的顺序出现。

这里是原始的Open Graph标签:

Meta Tag: <meta property="fb:app_id" content="407390309287595" /> 
Meta Tag: <meta property="og:type" content="article" /> 
Meta Tag: <meta property="og:url" content="http://www.zujava.com/how-to-make-a-book-cover" /> 
Meta Tag: <meta property="og:site_name" content="Zujava.com" /> 
Meta Tag: <meta property="og:image" content="http://assets1.zujava.com/sites/default/files/3781/how-to-make-a-book-cover/book-cover.jpg" /> 
Meta Tag: <meta property="og:title" content="How to Make a Book Cover" /> 
Meta Tag: 
<meta property="og:description" content="Preparing to go back to school can be expensive. Buying book covers should not be one of your expenses because it is so easy to make your own book covers for no cost at all. It takes less than 5 minutes to make a book cover and it doesn&amp;#039;t require any tools or extra supplies. You can make your own book covers out of paper bags, construction paper, bubble wrap, wrapping paper and other recyclable materials that you probably already have in your home. Once you cover your book you can decorate it by doodling on the front or adding stickers." /> 
Meta Tag: <meta property="article:published_time" content="2012-07-07" /> 
Meta Tag: <meta property="article:author" content="http://www.zujava.com/users/varietywriter" /> 
Meta Tag: <meta property="article:tag" content="crafts" /> 
Meta Tag: <meta property="article:tag" content="education" /> 
Meta Tag: <meta property="article:tag" content="school" /> 
Meta Tag: <meta property="article:tag" content="back to school" /> 
Meta Tag: <meta property="article:tag" content="easy crafts" /> 
Meta Tag: <meta property="article:tag" content="art" /> 
Meta Tag: <meta property="article:tag" content="arts and craft projects" /> 
Meta Tag: <meta property="article:tag" content="books" /> 
Meta Tag: <meta property="article:tag" content="book covers" /> 
Meta Tag: <meta property="article:tag" content="how to" /> 
Meta Tag: <meta property="article:tag" content="make your own" /> 
Meta Tag: <meta property="article:tag" content="arts and crafts" /> 

是什么格式不正确,或缺少什么?

+0

尝试添加'article:modified_time'或'article:expiration_time'。两者都具有与“article:published_time”相同的数据类型。 (只是一个猜测) – Lix 2012-07-08 12:52:47

+1

调试器本身显示它从页面中提取信息'article:published_time:1341644400',这就是...惊喜的2012年7月7日的unix时间戳。有时候调试器会给出错误信息,这些信息没有多大意义,因为似乎没有_actual_错误 - 所以我不会多说。 Facebook应该真的在这个工具上工作一些... – CBroe 2012-07-08 14:40:18

回答

3

不要担心,它只是一个警告(不是错误,错误在Debug工具输出中显示为红色),并且不会阻止OpenGraph中的数据更新。

为了确保您可以将更新后的数据与您发布的数据进行比较,目前它似乎没有问题。

article:published_time:1341644400 -> 2012-07-07T10:00:00+03:00 

如果你wan't相应的警告消息只需更换您的DateTime字段OpenGraph与UNIX时间戳meta标签的内容,并警告将消失。我在OpenGraph: custom properties not showing in post的回答中描述了这个问题,提供了关于此问题的现有错误的链接(请参阅答案底部的BTW)。

+0

感谢您的信息,但我有点困惑。什么是“DateTime”字段? – Justin 2012-07-09 15:42:54

+0

@Justin,'article'对象的字段'published_time'是(这就是为什么它在调试工具输出中显示为时间戳)'DateTime'字段,请参阅[简单类型](https://developers.facebook.com/docs/ opengraph/simpletypes /)在OpenGraph文档中。 – 2012-07-09 17:37:30

+0

谢谢@Juicy Scripter!将其更改为Unix时间戳工作。真正的问题是Facebook文档中的错字。这是令人困惑的,因为他们自己的文档使用日期类型,导致他们的调试发出警告。 – Justin 2012-07-10 14:32:20