ブログ

OGP の変更が SNS に反映されない原因とキャッシュの更新方法

OGP の画像やタイトルを直したのに、SNS で共有すると古い表示のまま残っている。多くの場合、原因は設定の誤りではなく、SNS 側が以前取得した情報を保存しているキャッシュです。

この記事では、反映されない原因を切り分け、SNS ごとのキャッシュの扱いと更新方法、画像 URL を変えて反映させる方法、短縮 URL で表示を切り替える方法を説明します。OGP そのものの確認方法は OGP の確認 にまとめています。

反映されない主な原因

OGP が反映されない原因は、大きく分けて 5 つあります。

原因 見分け方
SNS 側のキャッシュ ページのソースは正しいのに、共有時だけ古い
変更が本番に反映されていない ページのソースを見ると古いタグのまま
画像が取得できない 画像 URL を開くと表示されない、またはサイズが大きすぎる
ページ側のキャッシュ(CDN など) 時間を置くと反映される、環境で見え方が違う
タグの重複や記述ミス ソースに同じ og: タグが複数ある

最初にするのは、ページのソースを表示して、自分が直した値が本当に配信されているかを確認することです。ここが古いなら、SNS ではなくサイト側の問題で、CDN や WordPress のキャッシュプラグインを疑います。ソースが正しいのに共有時だけ古いなら、SNS 側のキャッシュが原因です。

SNS のキャッシュの仕組み

SNS は、URL が投稿されるたびに毎回ページを取りに行くわけではありません。一度取得した OGP の情報を、一定期間は保存して再利用します。大量のリンクが共有される中で、サイトへのアクセス負荷を抑え、表示を速くするためです。保存される期間は SNS ごとに異なり、公式にも明示されていないことが多いため、明確な日数は断定できません。

X については、カード情報のキャッシュが最大で約 7 日とされる報道があります。ただし最新の仕様は変わる可能性があるため、確実に更新したい場合は後述の方法を併用してください。

投稿済みの投稿は、さらに別の扱いです。すでに共有された投稿に表示されているプレビューは、投稿時点の情報が固定されて、あとで OGP を変えても自動では変わらないことが一般的です。新しい内容を見せたい場合は、変更後に新しく投稿し直す必要があります。

キャッシュを更新する方法

SNS ごとに、キャッシュの更新方法が異なります。

Facebook

Facebook の共有デバッガー(Sharing Debugger)に URL を入力し、「新しいスクレイピング情報を取得(Scrape Again)」を実行すると、取得し直した内容が表示されます。この更新は、Facebook 内の表示に反映されます。すでに投稿済みの投稿に対しては、投稿側で添付ファイルの更新を行う方法も案内されています。画面の表記は変わることがあるため、公式のヘルプで最新の手順を確認してください。

X

X では、Card Validator のプレビュー機能が 2022 年に削除されたため、検証ツール経由で画面上のプレビューを更新することはできません。キャッシュが切れるのを待つか、後述のように URL にパラメーターを付けて別の URL として投稿する方法を使います。

LINE

LINE にはキャッシュを手動で消す公式の機能が見当たりません。急ぎの場合は、URL の末尾にパラメーターを付けて、別の URL として共有する方法が使われます。

その他

LinkedIn には Post Inspector があり、再取得ができます。そのほかの SNS では、URL を変える方法を基本にします。

画像 URL を変えて反映させる

画像だけが古い場合は、画像のファイル名を変える方法が確実です。たとえば ogp.png を ogp-2.png にして、og:image のタグを書き換えます。SNS から見ると、画像の URL そのものが別になるため、保存された古い画像を使い回さずに済みます。

同じ名前のまま上書きしても、SNS 側が保存した画像を使い続けることがあります。版を示す番号や日付を、ファイル名に入れて管理すると、更新の履歴も追いやすくなります。

クエリパラメーターで URL を変える

ページの URL に ?v=2 のようなパラメーターを付けて共有する方法もあります。SNS 側は別の URL として扱うので、再取得が走りやすくなります。ただしこの方法は、共有される URL がバラバラになり、アクセス解析が分かれる副作用があります。UTM を併用する場合は、UTM パラメーター の設計と合わせて整理しておくと混乱しません。

短縮 URL で表示を切り替える

もう一つの方法が、短縮 URL を使って共有時の表示を管理することです。元のページの OGP を触らずに、短縮 URL 側にタイトル、説明、画像を設定できるサービスなら、次のような運用ができます。

  • 配信ごとに違う短縮 URL を発行し、それぞれに合った画像とタイトルを設定する
  • 新しいキャンペーン用の短縮 URL を発行し、最初から新しい OGP で共有する
  • 古い短縮 URL の行き先は、あとから リンク先を変更 して整理する

新しい短縮 URL は SNS にとって未取得の URL なので、古いキャッシュの影響を受けません。「キャッシュが消えるまで待つ」のではなく、「最初から新しい URL で出す」という考え方です。

Boostlink のスタンダード以上では、OGP(共有時のタイトル、説明、画像)を短縮 URL ごとに変更できます。なお、表示する OGP は、リンク先のページ内容と合ったものにしてください。ページの内容と大きく食い違う表示は、利用者の信頼を損ない、プラットフォームの規約にも触れるおそれがあります。

更新を確実にする手順

  1. ページのソースで og: のタグが新しい値になっているか確認する
  2. 画像の URL を直接開き、表示されるか確かめる
  3. Facebook の共有デバッガーで再取得する
  4. 反映されない SNS には、画像のファイル名を変える、または新しい URL を使う
  5. 自分だけが見られる場所に投稿して、見え方を最終確認する

再発を防ぐ運用

公開前に OGP を整えておけば、キャッシュの問題はそもそも起きません。ページを公開する前に、タイトル、説明、画像を確定し、確認ツールで取得結果を見てから共有します。共有してから直すと、最初に取得された古い情報が残り続けます。

やむを得ず公開後に画像を変える場合は、新しいファイル名で画像を置き、タグを書き換えてから再取得します。変更の日付と内容をメモしておけば、いつまで古い表示が残る可能性があるかも把握できます。複数の人でサイトを運用している場合は、OGP の変更手順を共有しておくと、更新漏れを減らせます。

切り分けの手順(例)

「画像を差し替えたのに、X で古い画像が出る」という状況を例に、原因を切り分ける流れを示します。

  1. ページのソースを表示し、og:image の URL が新しい画像になっているか見る。
  2. その URL を直接ブラウザで開き、新しい画像が表示されるか確認する。
  3. 別のブラウザやシークレットウィンドウで同じ操作をし、自分の環境のキャッシュを除外する。
  4. 1〜3 がすべて正しければ、サイト側の問題ではなく、SNS 側のキャッシュと判断する。
  5. 画像のファイル名を変えて og:image を書き換えるか、新しい URL で投稿する。

1 の段階で古いままだった場合は、サイト側のキャッシュが原因です。WordPress のキャッシュプラグインや CDN の設定にある、キャッシュの削除を実行して、再び確認してください。順序を守ると、原因の見当違いによる無駄な作業を避けられます。

ケース別の対処

ケース 対処
公開前に共有してしまい、空の OGP が残った 画像と説明を整えたうえで、共有デバッガーで再取得する
画像だけ古い ファイル名を変えて、og:image を書き換える
タイトルだけ古い og:title を更新し、再取得するか新しい URL で共有する
投稿済みの投稿のカードが古い 投稿は固定されているため、新しく投稿し直す
短縮 URL で共有している 新しい短縮 URL を発行して、最初から新しい表示で出す

投稿済みの投稿を削除して作り直す場合は、反応やコメントが失われる点を考えて判断してください。急ぎでなければ、今後の投稿から新しい表示にする運用でも十分です。

よくある質問

何日待てば反映されますか

SNS が保存する期間は公開されていないことが多く、日数は断定できません。数日待っても変わらない場合は、待つより画像のファイル名や URL を変える方法が確実です。

URL にパラメーターを付けると、順位や集計に影響しますか

検索順位への影響は、通常は小さいとされていますが、断定はできません。集計の面では、アクセス解析が URL ごとに分かれる場合があります。共有用に付けたパラメーターの種類を記録しておくと、後から集計をまとめられます。

画像を差し替える代わりに、同じファイル名で上書きしてよいですか

上書きすると、SNS が古い画像を保存したまま使い続ける可能性があります。更新の履歴も追えなくなるため、番号や日付を付けた新しいファイル名にしてください。

他人のサイトの OGP が古いときは直せますか

直せません。OGP はそのサイトの管理者が設定するものです。共有する側にできるのは、URL の違いによる再取得を試すことくらいです。表示が重大に誤っている場合は、サイトの管理者に連絡してください。

まとめ

OGP が反映されない原因は、多くの場合 SNS 側のキャッシュです。まずページのソースが正しいかを確認し、そのうえで SNS ごとの方法で更新します。Facebook は共有デバッガーで再取得でき、X や LINE は手動での削除手段が限られます。そのため、画像のファイル名を変える、新しい URL で共有するといった方法を併用します。

Boostlink なら、短縮 URL ごとに OGP を設定でき、新しい URL で共有し直すだけでキャッシュの影響を避けられます。

また、すでに育った SNS アカウントを引き継ぎたい場合は、Boostshop もご確認ください。