vBulletin 4.1.5 を実行していて、Facebook の設定を構成しました。私が直面している問題は、誰かが [いいね] ボタンをクリックしたときに、Facebook に投稿されたサムネイルがスレッドの最初の画像ではなく、ページのどこからでもランダムに選択されることです。つまり、そのスレッドで返信されたユーザーのアバターです!
あなたの助けに感謝!
vBulletin 4.1.5 を実行していて、Facebook の設定を構成しました。私が直面している問題は、誰かが [いいね] ボタンをクリックしたときに、Facebook に投稿されたサムネイルがスレッドの最初の画像ではなく、ページのどこからでもランダムに選択されることです。つまり、そのスレッドで返信されたユーザーのアバターです!
あなたの助けに感謝!
1 つの解決策は、すべての共有に対してグローバルな「facebook-thumbnail」を定義できることです。
に行く
この画像は、サイトのロゴなどにする必要があります。
私はまだ vB3.8.x でプログラミングしていますが、Facebook 好きなプラグインに取り組んでいます。あなたが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">
次に、facebook の JavaScript が必要です。
<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:image を見て、それを最初のサムネイルとして使用します。次に表示されるサムネイルは最後から 2 番目、というように続きます。それが重要な場合は、SQL の並べ替え順序を試してみてください。また、image_src リンクは、非オープン グラフ ソーシャル サイト (google plus、twitter) に使用されます。