前々からやろうと思って思ってやっていないのが、
TwitterやfacebookなどにこのBlogのURLを貼られたときに表示内容を定義できるOpen Graph protocol(OGP)への対応。
設定しないままではイマイチな表示になる場合があるのは知ってるんだけど、
一方で画像がほとんどないこのサイトで対応してもなという考えもあって、進んでいない。
OGPはSNSへのWebページの統一的な引用方法を定義するものだが、
やはりポイントはWebページを代表する画像を決められること。
Instagramであれば投稿された画像がまさにそれに該当する。
もっともInstagramはTwitterでの表示はできないようだけど。
どうもTwitterはOGPに対して拡張した設定を要求しているようだ。
OGPはHTMLのmeta要素で、表示に必要な情報を定義する。
タイトル、タイプ、画像、URLの4つが基本要素で、あとは必要に応じていろいろ。
サイトのタイトルを定義できるsite_nameとか、概要を記述できるdesctiptionとかは有用そう。
タイプというのはコンテンツの種類で、music, videoはさらに細かく細分化され、他はarticle, book, profile, websiteがある。
こういう一般的なページの場合は、トップがwebsiteで、各記事はarticleに該当するようだ。
あえてmovieとかmusicとかbookとか定義するのはあまり多くないかもしれない。
これに加えてTwitterではTwitter Cardという機能に対応した記述を要求している。
Optimize Tweets with Cards (Twitter)
最低限、meta要素でtwitter:cardを定義すれば良い。
これはTwitter上での表示方法を決めるもので、画像を大きく表示するならsummary_large_image、それ以外ならsummaryでしょう。
これに加えてTwitterのユーザー名を定義できるが、用途は不明。必須ではないと書かれているが。
ただ、画像がないとあまり面白みがない。というか一応は必須要素ですからね。
ここがOGPの根本的な目的で、そこで見栄えする画像がなければ、そこまで意味は無い。
とはいえ、OGP対応しておかないとヘンテコな表示になる場合があるんだよね。特にfacebookだよね。
TwitterはTwitter Card用の設定をしなければ、ただのURLが表示されるだけなので、見栄えはしないが害もない。
というわけで、なにがしか設定しておくべきかとおもいつつ、どうせ引用する人なんてそうそうおらんだろと。
裏返せば画像が多いサイトなら、ぜひとも対応しておきたい機能である。
各ページに画像はなくても、扉絵があれば、それを統一して設定しても良い。
設定自体はmeta要素を追加するだけなので、そんなに難しい話ではない。
設定するべき要素が揃っていれば、そんなに難しくはないんですよ。
そう、気乗りしないのは画像が皆無だから。そういうこと。