我即将将Like按钮合并到我的网站中 - 这将是我第一次合并Facebook的功能 - 并希望获得有关是否使用XFBML选项或Iframe选项的一些指导。似乎XFBML为未来提供了更多的灵活性,但是a)这种方法有什么缺点,并且b)HTML5兼容版本更好吗?谢谢。
答案 0 :(得分:2)
如果您想在网站中使用快速且非侵入性的代码,请使用IFrame,但SEO可能会受到影响。
如果要添加更多功能,请使用XFBML或HTML5。但这需要使用包括JS SDK,但恕我直言,它将在长期内更好
答案 1 :(得分:2)
XFBML不会消失,与FBML不同。我也对此感到困惑,因为他们所有的社交插件示例代码仍然提供了xfbml选项。
请参阅https://developers.facebook.com/blog/post/568/
请注意:我们对FBML的弃用不会影响XFBML(eXtended Facebook标记语言)。 XFBML是一组可以的XML元素 包含在HTML页面中以显示社交插件。当你的页面 加载后,文档中找到的任何XFBML元素都将被处理 JavaScript SDK,导致呈现适当的插件 在你的页面上。 JavaScript SDK将继续支持XFBML FBML的弃用(除了fb:serverFbml元素之外) 用于在我们的服务器上执行FBML。
HTML5 / XFBML / IFRAME?我认为它没有多大区别。一旦facebook api被初始化,所有这些都最终成为iframe。如果使用firebug或chrome检查元素,则可以看到此信息。也许不符合标准,xfbml版本可能更具代表性,因为通过标记名获取一堆元素比通过类名更快。
对HTML5版本的一个警告是,如果您打算订阅该插件的events,则在初始化api时需要添加一个频道文件。没有它,xfbml版本可以正常工作(至少在撰写本文时)。
答案 2 :(得分:1)
FBML将在未来6个月内消失,见https://developers.facebook.com/docs/reference/fbml/,因此这不是一个好的长期选择。 (FBML和XFBML不一样。)XFBML是一种有效的方法,但语法需要一些时间来习惯。需要在您的网页上运行解析代码,这不是什么大不了的事,但对某些网站所有者来说。
HTML5是我这样做的方式,但是需要在你的网页上运行解析代码,这不是什么大不了的事,但对于一些网站所有者来说。
iFrame选项效果很好,但与其他任何方式一样,请务必查看Facebook,看看他们是否会弃用它。