我已阅读How to integrate Facebook's Open Graph in a Meteor application?并密切关注,但og标记仍未注册):
我只想设置几张图片,以确保在Facebook中输入http://bubble.meteor.com时会出现几个缩略图
以下是我的代码: (更新)
<head>
...
<meta property="og:image" content="http://bubble.meteor.com/img/ogimage1.png">
<meta property="og:url" content="http://bubble.meteor.com">
<meta property="og:title" content="Emory Bubble">
</head>
我做错了吗?谢谢!
答案 0 :(得分:2)
首先,<html>
标记不属于<head>
。 Meteor始终使用HTML5 doctype定义。即使您设法将其更改为XHTML,您最终也可能会得到无效的XHTML,因为注入HTML的扩展包会假设HTML5。
其次,不需要为OpenGraph标记声明任何名称空间。像“og:title”这样的字符串只是属性中的不透明数据,它们不会影响HTML解析器。
<强>更新强>
我使用Facebook的调试页面进行了检查,但它确实不起作用: http://developers.facebook.com/tools/debug
这产生了“解析输入URL时出错,没有数据被删除”错误。
我还使用应该触发spiderable包的特殊转义片段URL检查了页面: http://bubble.meteor.com/?_escaped_fragment_=
结果页面不包含HTML内容,Javascript标记仍然存在,表明spiderable包不起作用。你有没有把它添加到你的项目中? (meteor add spiderable
)。
如果您添加了它,它就不起作用。如果运行PhantomJS失败,spiderable包将返回正常页面。您应该在本地开发版本上查看它,使用上面的URL来触发spiderable。
我还注意到你使用'school'作为og:type
,据我所知,这不是一个有效的类型。请尝试“网站”。
更新2
另请查看Chris Mather关于spiderable包的截屏视频: http://www.eventedmind.com/posts/meteor-the-spiderable-package
在这个截屏视频中,他提到了订阅的潜在问题,这些订阅从未标记为已准备好,并且使得spiderable包失败。也许这会导致你的问题?