每当我使用facebook的debug tool对某个对象发布“操作”时,我会为每个操作获得不同的 id ,但在facebook上只能看到一个帖子。那是为什么?
答案 0 :(得分:1)
是的,每个og对象都应该有一个不同的URL。无论如何,每个og对象都需要有不同的og:xxxxxx
标签。在RottenTomatoes上考虑这些og对象:
http://www.rottentomatoes.com/celebrity/tom_hanks
http://www.rottentomatoes.com/celebrity/meg_ryan
查看这些网页的来源,您会看到og:image
和其他og:
代码。
这些也是动态网页的好例子。
通过更改x.php?a=0
标记,您可以使x.php?a=1
成为与<meta>
不同的对象,并且它会通过FB Debugger就好了。
例如,我创建了这些动态对象:
http://plooza.com/og/dynamic1.php?obj=0
http://plooza.com/og/dynamic1.php?obj=1
当我将这些og对象/ URL输入调试器时,它会抓取并解析它们并将它们识别为不同的对象,因为我在网络服务器上这样做:
$obj_number = (int)$_REQUEST['obj'];
echo '<meta property="og:url" content="http://www.plooza.com/og/dynamic1.php?obj='.$obj_number.'" />';
switch ($obj_number) {
case 1:
$url = 'http://img2.10bestmedia.com/Images/Photos/68906/bar-one-exterior_6_400x400.jpg';
break;
default:
$url = 'http://cdn.ghacks.net/wp-content/uploads/2010/06/microsoft-default-manager22.png';
break;
}
echo '<meta property="og:image" content="'.$url.'" />';
请注意,我已根据og:url
og:image
的值更改了obj
和dynamic1.php?obj=
当我向调试器提交http://plooza.com/og/dynamic1.php?obj=1
时,它会显示与og:image
obj=0