我已经成功地在我的页面添加了一个类似Facebook的按钮,使用opengraph标签将其定义为图形中的一个对象,因此它被视为一个对象,而不是一个链接。
我使用的是ogtype = product元标记,但Facebook解析器会产生错误(见下文),这似乎与Facebook不再支持“产品”类型的事实有关。
喜欢对象时,它显示为“产品/服务”。这似乎很好,但是由于解析器错误,并且需要了解更多,我想解决它并采取给出的建议来实现我自己的自定义类型,我可能会在以后充分使用它。
我的网页是现有产品的评论页面(单个对象产品,同一页面上的多个评论),因此我需要定义一个自定义命名空间才能执行此操作。但是,我不确定我做得对......
我总体上有点困惑,因为我似乎必须有一个应用程序才能这样做并定义一个自定义对象和动作(即使我没有立即计划利用一个动作)。
所以我在Facebook的“App”中设置了一个名称空间(mySiteName),我已经定义了一个对象“ski”和动作“review”(稍后)。
然后是我的自定义名称空间声明:
http://ogp.me/ns#mySiteName: http://ogp.me/ns/apps/mySiteName#“>
这最初通过了调试测试,但后来我注意到我有一个无关的标签,我删除了一些新的错误:
初始调试错误:
此元数据的解析器结果与输入不匹配 元数据。可能,这是由数据订购引起的 意外的方式,仅为属性提供多个值 期望给定属性的单个值或属性值 不匹配。这是输入属性=>内容对 在解析结果中没有看到:'og:type =>产品
代码(无错误):
<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'的属性。
等
元标记:元标记:
等
感谢您的任何意见 - 我一直在努力工作几个小时而没有任何快乐。
答案 0 :(得分:2)
解析器适用于当前的Open Graph API,但'og:type = product'来自于2010年使用Like按钮启动的标记的早期版本 - 目前的文档:https://developers.facebook.com/docs/opengraphprotocol/
它应该仍然有用,但是Facebook's Debug Tool不会传递它,因为它正在查找与当前版本的Open Graph
一起使用的自定义操作和对象标记相关联的标记对于自定义对象,标题等应添加og:title
,而不是og:namespace:title
标记,这可能是您的'ski'对象的问题?
在应用程序的“打开图表”设置中,对象定义旁边有一个“获取代码”按钮,其中包含该对象的示例标记:
- 看看与你正在做的事情相比如何