×

FacebookとGoogle+でのシェア情報とページ内容が違う場合の対策【OGP設定・キャッシュ確認】

2016年1月27日 WEB

先日、とあるサイトににソーシャルボタンを設置しました。

ボタンを設置して、FacebookとGoogle+のソーシャルボタンの動作テストをしていたら、とシェアされた内容とページで設定している内容が違うという現象が起こったので、対策を紹介します。

いろんなところでこの話題を目にして、今更な感じではありますが気にせずに書きます。

Facebook編

Facebookはのソーシャルボタンはサイト運営で定番になっています。SNSの中でも利用者が多く、ウェブページの拡散が期待できます。

OGP情報の設定確認を行う

Facebookでシェアするときに表示される取得するタイトル、説明文、サムネイルはOGP(Open Graph Protocol)情報を参照しています。

※OGP(Open Graph Protocol)
FacebookなどのSNSでサイトページがシェアされたときに、ページのタイトル、説明、画像情報を伝えるための仕様。<meta>タグで記述して、property属性に情報の種類、content属性に具体的なページ情報を記述する。

まずはOGP報をが自分の意図した設定になっているかを確認しましょう。

	
	
	
	
	

【最低限必要なOGP】

property 意味 内容(content)
og:type ページの種類 TOPページ:website
下層ページ:article
og:url ページURL (例)http://example.com/exp/
og:title ページタイトル ページのタイトルを記述します。
og:description ページの説明 ページの概要を記述します。
og:image ページの画像(サムネイル) (例)http://example.com/img/example.jpg
サムネイル用の画像ファイルパス

最低限必要なOGP情報の設定をしましょう。

Facebookのデバッガーで最新の情報を取得する

OGP情報が正しく設定されているのを確認したら、次はFacebookが保持しているOGP情報のキャッシュが最新の状態になっているか確認します。

Facebookはウェブページがシェアされた際に、シェアのたび毎回OGP情報を取得しているわけではなく、一度取得したOGP情報をキャッシュ保持しています。もし、ページ内容やOGP情報を変更した場合、キャッシュが古いままだと、ページで設定している内容とシェアされた内容が異なる可能性があります。

Facebookでは開発者向けデバッガーが用意されており、このデバッガーによって取得する情報を最新のものにすることが可能です。

デバッガー – 開発者向けFacebook
(※Facebookへのログインが必要です。)

“Enter a URL”の入力欄にURLを入力して、”Debug”ボタンをクリックするとキャッシュされているOGP情報が表示されます。
“Fetch new scrape information”をクリックすると、最新のOGP情報をキャッシュすることができます。
(※”Show existing scrape information”はDebug同様に現在のキャッシュが表示されます。)

これでダメだったらお手上げです。

Google+編

様々なサイトでよく設置されているのを見かけますが、Google+って誰が使ってんの?というぐらい周りで使っている人を見かけません。

ネットで検索しても、Google+の仕様に関する情報はFacebookと比べて少ないことがわかります。

Facebookやtwitterはリンクにnofollowがついているので被リンク効果は得られないのですが、Google+はこの被リンク効果が得られるという点でボタン設置に価値があるような気がします。拡散力という点では圧倒的にFacebook、twitterのほうがあるでしょう。

OGP情報の設定確認を行う

Facebookと同様にOGP情報の設定を確認します。
(※FacebookのOGP情報の設定確認を行うを参照)

マイクロデータの設定確認を行う

HTML5にはマイクロデータという仕様があり、マイクロデータによってコンピュータがHTMLの内容をより詳細に読み取れるようにすることができます。

下記のようにマイクロデータが設定されていると、優先的にGoogle+に参照されるようです。(※マイクロデータについての詳細は割愛することにします。)

	
	
	

個人的には、OGP情報を設定していればGoogle+はそちらを参照してくれるのでマイクロデータの記述は無くてもOKかなと思います。(単に管理が面倒なだけですが)

手動でのシェア情報更新は不可

Facebookは開発者用デバッガーが用意されており、管理者側でシェア情報のキャッシュを最新のものに変更可能ですが、調べてみた感じではGoogle+においてそういったデバッガーの用意はありません。

キャッシュに関して明記されていないので推測になってしまいますが、シェア情報のキャッシュ更新はGoogle+側のタイミングで行われるようです。

まとめ

SNSのキャッシュ取得に関してはそれぞれ仕様が異なっており、自分の思い通りのタイミングでキャッシュ取得させるできません。

ページ公開前にOGP設定情報を正しく行い、ページ公開後は極力OGP情報を変更しないようにすることで、ページで設定している内容とシェアされた内容が異なるということを防げるはずです。

関連記事