2

我已经成功地在我的页面上添加了一个 Facebook 喜欢按钮,使用 opengraph 标签将其定义为图表中的一个对象,因此它被喜欢为一个对象,而不是一个链接。

我正在使用 ogtype=product 元标记,但 Facebook 解析器会生成一个错误(见下文),这似乎与 Facebook 不再支持“产品”类型这一事实有关。

喜欢该对象时,它显示为“产品/服务”。这看起来不错,但是由于解析器错误,并且需要更多地了解,我想解决它并接受给出的建议来实现我自己的自定义类型,我以后可能会充分使用它。

我的页面是现有产品的评论页面(单个对象产品,同一页面上的多个评论),因此我需要定义一个自定义命名空间才能做到这一点。但是,我不确定我做得对...

总的来说,我有点困惑,因为似乎我必须有一个应用程序才能执行此操作并定义自定义对象和操作(即使我没有立即使用操作的计划)。

因此,我在 Facebook 的“应用程序”中设置了一个命名空间(mySiteName),并定义了一个对象“滑雪”和动作“审查”(供稍后使用)。

然后是我的自定义命名空间声明:

http://ogp.me/ns#mySiteName: http://ogp.me/ns/apps/mySiteName# ">

这最初通过了调试测试,但后来我注意到我删除了一个无关标签,并且收到了很多新错误:

初始调试错误:

此元数据的解析器结果与输入元数据不匹配。这很可能是由于数据以一种意外的方式排序、为一个属性提供了多个值而只期望一个值、或者给定属性的属性值不匹配造成的。以下是解析结果中未看到的输入属性 => 内容对:'og:type => product'

代码(无错误):

<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="{lang}" lang="{lang}" xmlns:fb="http://ogp.me/ns/fb#">
<head>
<head prefix="og: http://ogp.me/ns#mysitename: http://ogp.me/ns/apps/mysitename#">
<meta property="og:type" content="mysitename:ski" />

新的调试错误删除了似乎只使用了 mysitename 命名空间的额外内容:

无关属性:此类型的对象不允许名为“og:mysitename:type”的属性。无关属性:此类型的对象不允许名为“og:mysitename:title”的属性。

ETC

元标记: 元标记:

ETC

感谢您的任何意见 - 我已经尝试了好几个小时,没有任何乐趣。

4

1 回答 1

2

解析器适用于当前的 Open Graph API,但 'og:type = product' 来自早期版本的标记,该标记于 2010 年使用“Like”按钮启动 - 当前文档位于:https ://developers.facebook.com/文档/opengraphprotocol/

它应该仍然可以工作,但Facebook 的调试工具不会通过它,因为它正在寻找与当前版本的Open Graph使用的自定义操作和对象标记相关联的标签

对于自定义对象,标题等应该添加og:title,而不是og:namespace:title标签,也许这是您的“滑雪”对象的问题?在您的应用程序的 Open Graph 设置中,对象定义旁边有一个“获取代码”按钮,其中包含该对象的示例标签:在此处输入图像描述 - 查看与您正在执行的操作相比如何

于 2012-06-19T11:33:56.257 回答