BufferのTwitter投稿に画像もつけてみる。
何がよいのか
効果絶大!ブログの更新通知をTwitterに流すときは「サムネ画像付き」にしたほうが断然読まれるよ*frasm
こちらの記事見て「おー、それはいいかも」と思ってやってみました。
(なんか、まだちょっと画像が出たり出なかったりしている気がするので完全ではないのかもしれないです。あと表示するクライアントによっても画像でたり出なかったりしますね)
やりかた
いじるファイルなどは前回のエントリーを参照してください。
以下の赤字部分を追加しています。
case 'twitter': $trunc = false; if($format && $format != 'standard' && $format != 'status' && $format != 'aside') { if($text) { $text = '[' . ucwords($format) . '] ' . $text; } else { $text = ucwords($format); } } /*a-tak add */ foreach ($attachments as $attachment_id => $attachment) { $params['media[picture]'] = wp_get_attachment_url($attachment_id); $params['media[thumbnail]'] = wp_get_attachment_url($attachment_id); } $text = tp_bufferapp_truncatewords($text, 119) . ' ' . $permalink; break; default: $params['media[link]'] = $permalink; /*a-tak del foreach ($attachments as $attachment_id => $attachment) { $params['media[picture]'] = wp_get_attachment_url($attachment_id, 'medium'); } */ $text = tp_bufferapp_truncatewords($text, 119) . ' ' . $permalink; break;
苦労したところ
こちらを参考にBufferのAPI叩いてみましたが、Bufferの仕様なのか、
Facebookへの投稿の時は
$params[‘media[link]’] = $permalink;
を入れないといけない。
逆にTwitterの投稿の時にこれを入れると二重にTwitterに投稿される。
どうも、linkを入れることでFacebookには画像が投稿されなくなるようだ。
linkを外すと画像はFacebookにアップされるが、投稿はTwitterに流れる。
なんかBuffer側の問題っぽいな。
あと、
$params[‘media[thumbnail]’] = wp_get_attachment_url($attachment_id);
<
p>という感じでthumbnailのオプションも指定出来るみたい。
これやるとBuffer上でサムネイルが表示されてわかりやすい。