我在这个网站和谷歌上看到过关于如何使Facebook代码有效的各种文章,但没有一个解决方案似乎适合我。 我认为问题出在我的doc类型decleration上:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en" xmlns:fb="http://www.facebook.com/2008/fbml" xmlns:og="http://opengraphprotocol.org/schema/" >
...
<meta property="og:site_name" content="my site name" />
<meta property="og:title" content="Buy...
有人能指出我正确的方向吗?
约翰
答案 0 :(得分:0)
我遇到了类似的问题。
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML+RDFa 1.0//EN" "http://www.w3.org/MarkUp/DTD/xhtml-rdfa-1.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xmlns:og="http://ogp.me/ns#" xml:lang="nl-NL">
...
<meta property="og:type" content="book" />
几乎所有的例子都是这样的,奇怪的是它在w3c的验证器上有效,但是包括CSE Html验证器和http://check.rdfa.info在内的所有其他验证器都需要在元标记前面加一个og前缀:
<og:meta property="og:type" content="book" />
除了官方的w3c验证器之外几乎可以验证。不确定facebook是否会解析它。为什么他们选择不使用“名字”对我来说是一个很大的谜。多么糟糕!