みなさん、SNS使ってますか?
SNSでサイトのURLを共有するっていうこと、よくあると思います。
最近、SNSやLINEでURLを共有すると、URLの他にページのタイトルや時には画像なんかも表示されますね。かなり便利な機能です。
表示される情報はURLを張り付けたSNSなどが自動的にURLにアクセスして、ページの情報を読み込んで表示してくれているんですが、ページ側で「こんな文章を表示してね」「共有されたらこんな画像を表示してね」と指定することもできます。
ページ側で指定する情報をOGP(Open Graph Protcol)というのですが、今回は「一回共有したOGPが変えられない問題」について対処方法を紹介したいと思います。
OGPの仕組み
例えばFacebookにこんなページのURLを貼ってみます。

Facebookは自動的にURLにアクセスして、ページのタイトルや使われてる画像を取得して表示します。

でも、自動的に取得される情報がいつも表示して欲しい内容とは限りません。
そんな問題を解決するために、「ページの情報を表示するときはこの情報を使ってね」とページ側で用意しておくものがOGPです。
SNS側は、取得したOGP画像を自分のもとで一時的に保存(キャッシュ)しておきます。
例えば10万人にURLを共有した時に、10万人がSNSを開くたびにページに情報を取得しにいってしまうとページ側のサーバーにアクセスが集中して負荷がかかってしまうかもしれません。
SNSで保存した情報を共有されたユーザーに表示させれば、URLを見た2人目以降のアクセスはページ側には発生せず負担をかけずに済むというわけです。
便利な仕組みですね。
しかし、ここで問題が出てきてしまいます。
ページの情報が変更になり、OGP情報も新しく更新したのに、何度SNSにURLを共有しなおしても古い情報が表示されてしまう。フォームメーラーにもそんなお問い合わせを良くいただきます。
それは、「SNS側でOGP情報を保存して、URL共有時には保存した情報を使用している」ので、「元のページの情報を更新してもSNS側はページが更新されたことを知らない」ということが原因です。
※すぐにキャッシュされない場合もあります。
SNSは一度保存したページの情報を一定期間(SNSサービスによって異なるようです)保存し、その間は元ページの情報を確認することはありません。その間にいくらページの情報を更新してもSNS側には更新された情報が反映されないんですね。
キャッシュクリア
URL共有時に表示される情報を最新のものに更新するには、SNSに一時的に保存された情報「キャッシュ」を削除(クリア)する必要があります。
すべてのSNSで提供されているわけではありませんが、キャッシュクリアの方法を提供しているサービスもありますので、今回は各サービスごとのキャッシュクリアの手順をご紹介します。
シェアデバッガー
https://developers.facebook.com/tools/debug/
Facebookで共有したページの情報が更新されない場合はシェアデバッガーでFacebookにキャッシュされた情報をクリアしましょう。使い方は簡単です。


Card Validator
https://cards-dev.twitter.com/validator
Twitterでキャッシュクリアしたい場合はCardValidatorで簡単にできます。


簡素な表示ですがこれでキャッシュクリア!
LINE
Page Poker
https://poker.line.naver.jp/
LINEのキャッシュはFacebookやTwitterと比べても強力という話をよく聞きます。
そんな時はこの画面でキャッシュクリアを試してみましょう。


他にもURLを共有するとページ情報やサムネイル画像をキャッシュするサービスは色々ありますが、キャッシュクリアの手段を提供しているかどうかや、クリアの手順などはサービスによって異なります。
困ったら一度サービスに問い合わせたり、同じ悩みを持って解決した人がいないかインターネットで情報を集めるなどしてみましょう。
まとめ
というわけで、今回は共有したURLのOGP情報のキャッシュクリアについてご紹介しました。
OGPはとても便利な機能なので、困ったことがあっても解決方法を知っていれば臆することなく使えますね。
フォームメーラーで作成できるランディングページにも、もちろんOGP情報を設定することができます。
ランディングページを作ることができるフォームメーラーBusiness版は無料で登録して14日間はそのまま使えますので、ぜひお試しください。
▼フォームメーラーのサービス紹介サイト
https://www.form-mailer.jp/