Я все еще программирую с vB3.8.x, но я работаю над плагином для фейсбука. Может помочь вам написать, что вы сами для vB4.x
Во-первых, вам нужно определить пространства имен opengraph и facebook:
<html xmlns="http://www.w3.org/1999/xhtml" xmlns:og="http://opengraphprotocol.org/schema/" xmlns:fb="http://www.facebook.com/2008/fbml">
<head profile="http://gmpg.org/xfn/11">
Во-вторых, вам нужен JavaScript в Facebook:
<scr ipt type="text/javascript" src="http://connect.facebook.net/en_US/all.js#xfbml=1">
</scr ipt>
Наконец, вам нужны открытые графические теги, определенные в разделе html-страницы:
<meta property="og:type" content="article" />
<meta property="og:title" content="this shows up as article's title when you like" />
<link rel="image_src" href="http://www.yoursite.com/yoursite1.jpg" />
<meta property="og:image" content="http://www.yoursite.com/yoursite1.jpg" />
<link rel="image_src" href="http://www.yoursite.com/yoursite2.jpg" />
<meta property="og:image" content="http://www.yoursite.com/yoursite2.jpg" />
<link rel="image_src" href="http://www.yoursite.com/yoursite3.jpg" />
<meta property="og:image" content="http://www.yoursite.com/yoursite3.jpg" />
<link rel="image_src" href="http://www.yoursite.com/yoursite4.jpg" />
<meta property="og:image" content="http://www.yoursite.com/yoursite4.jpg" />
Плагин, над которым я работаю, будет перебирать 5 лучших вложений для сообщения и записывать теги image_src и теги og: image. Еще не уверен, какой крючок я буду использовать.
псевдокод:
$attachs = $db->query_read_slave("
SELECT attachmentid, attachment.dateline
FROM " . TABLE_PREFIX . "post AS post
INNER JOIN " . TABLE_PREFIX . "attachment AS attachment ON (attachment.postid=post.postid AND attachment.visible=1)
WHERE threadid = $threadinfo[threadid]
AND post.visible = 1
ORDER BY filename DESC
LIMIT 5
");
if ($db->num_rows($attachs))
{
while ($attachment = $db->fetch_array($attachs))
{
$strImages = "<meta property=\"og:image\" content=\"/attachment.php?attachmentid=$attachment[attachmentid]&d=$attachment[dateline]\" />"
}
}
К вашему сведению - кажется, что Facebook добавляет миниатюры в обратном порядке. Они будут смотреть на последнее изображение og: и использовать его в качестве первого эскиза; следующий показанный эскиз будет вторым, чтобы продлиться и так далее. Возможно, вы захотите поиграть с порядком сортировки SQL, если это важно. Также ссылка image_src используется для не открытых графических социальных сайтов (google plus, twitter)