Twitter Cardsの画像が表示されない時はrobots.txtも要確認

Twitter Cardsは、サイトのmetaタグに指定しておくと、サムネイル画像やキャプションを任意にTwitterのTLに反映させられるものです。
クリック率を上げるには設定していた方が良いものですね。

■公式
Twitterカード — Twitter Developers

色々とタイプはありますが、WebサイトであればSummeryか大きな画像月Summeryのどちらかですね。

Twiiter Cardsのサムネイル画像が表示されなくなる

iconDecotterも、ユーザーのツイート時のURLに個別のSummeryが表示されるような仕様にしていました。
ところが、昨年末あたりから、徐々にサムネイル画像が表示されないようになっていました。

画像が表示されない時は、TL上で上図のようになります。
仕様が変わったのかもと調べてみましたが、特にそんな様子はありませんでした。

仕様:Summary Card — Twitter Developers

twitter:image

A URL to a unique image representing the content of the page. You should not use a generic image such as your website logo, author photo, or other image that spans multiple pages.
The image must be a minimum size of 120px by 120px and must be less than 1MB in file size. The image will be cropped to a square on all platforms.

指定している画像も、フレーム画像そのまま送り込んでいるので、場合によっては満たさないものもあったかもしれませんが、基本的には仕様内に収まるものですし、今まで表示されていたサムネイル画像も表示されなくなったりしていたので、何か仕様が変わったのでは…と思いました。

こちらの検証用ページでは、タグそのものには問題が無いようなので、画像ファイルの指定に問題があるのかと考え、調査検証してみることにしました。
Card Validator | Twitter Developers

robots.txtの指定に原因があった

画像サイズを変更してみたり、色々と調べている中で、画像そのものの仕様には特に変更は無いというか、前のままの画像でも問題ないことがわかったのですが、何故か今まで通りの画像パスだとサムネイル画像は表示されないまま…。

で、なんとなくウェブマスターツールを確認中、robots.txtで、画像ファイルが置いてあるディレクトリをDisallow指定していることを思い出しました。

Disallow: /data/

試しにこれを削除してみたところ、これまでと同じ指定で、サムネイル画像が表示されるようになりました。

つまり、昨年末あたりでTwitter Cardsのサムネイル画像は、robots.txtでDisallow指定しているディレクトリの画像については読み込まないように変更された、というのが正しいようです。

上記のDisallow設定は念のため入れていただけなので、削除してもこのサイトとしてはまあ特に問題ないかと思うのでこのまま行こうと思います。

コメント

タイトルとURLをコピーしました