X(旧Twitter)にブログ記事のURLを貼ったのに、サムネイル画像が出ない。URLだけがむなしく表示される。
せっかく時間をかけてアイキャッチ画像を作ったのに、これはかなり痛いです。
しかも厄介なのは、「WordPressにアイキャッチ画像を設定している=Xでも表示される」とは限らないことです。
では、なぜ画像が出ないのでしょうか?
原因は大きく分けると、OGP・Xカードの設定、画像、Xからのアクセス、キャッシュのどこかにあります。
私なら、やみくもにプラグインを入れ替えたり画像を作り直したりはしません。順番に確認します。そのほうが圧倒的に早いです。

Xでサムネイル画像が表示される仕組み
XにWebページのURLを投稿すると、X側がそのページの情報を読み取り、タイトルや画像などを使ってリンクカードを作ります。
そこで重要になるのが「OGP」です。
OGPはOpen Graph Protocolの略で、WebページをSNSなどで共有するときに、タイトル・URL・画像などを伝えるための仕組みです。
Open Graph Protocolの公式仕様では、基本情報として次のようなデータが定義されています。
og:titleog:typeog:imageog:url
特にサムネイル画像に関係するのがog:imageです。
OGPについては、Open Graph Protocol公式仕様でも確認できます。
ただし、Xの場合はOGPだけではなく、X向けのカード設定も関係します。
Xカードには「summary」と「summary_large_image」がある
ブログ記事をXで共有するときに重要なのがtwitter:cardです。
代表的なのは次の2種類です。
summary
小さな正方形に近い画像と、タイトルなどが表示されるカードです。
画像を大きく見せたいブログ記事では、少し物足りなく感じることがあります。
summary_large_image
横長の大きな画像を表示するカードです。
ブログのアイキャッチ画像を目立たせたいなら、基本的にはこちらを使います。
HTMLでは次のような形になります。
<meta name="twitter:card" content="summary_large_image">
つまり、
「画像は表示されている。でも小さい」
という場合は、画像そのものよりtwitter:cardを先に確認したほうがいいでしょう。
Xでサムネイルが表示されないときはこの順番で確認する
サムネイルが出ないと、つい「Xがおかしい」と思いたくなります。
たしかにX側の問題もあります。ただ、最初からそこを疑うと泥沼です。
私は次の順番で確認するのが一番わかりやすいと思います。
1.記事にアイキャッチ画像が設定されているか確認する
WordPressなら、まず記事編集画面を開きます。
右側にある「アイキャッチ画像」を確認してください。
ここが空なら、当然ながらOGP用画像にも影響する場合があります。
まず画像を設定して記事を更新します。
非常に基本的ですが、基本的なところほど人間は華麗に見落とします。
2.ページにogが出力されているか確認する
次に、実際のページにOGPが出力されているか確認します。
Chromeなどで記事を開き、
「右クリック → ページのソースを表示」
と進みます。
そしてページ内検索で、
og:image
を探します。
次のようなタグがあれば、OGP画像が指定されています。
<meta property="og:image" content="画像のURL">
Open Graph Protocolでは、og:imageにWebページを代表する画像のURLを設定する仕組みになっています。
ここで重要なのは、タグがあるだけではありません。
実際に指定されている画像URLを開けるかも確認してください。
404エラーになったり、アクセスを拒否されたりする画像ではXも取得できません。
3.twitterを確認する
同じページソースで、
twitter:card
を検索します。
ブログ記事で大きな画像を表示させたい場合は、
<meta name="twitter:card" content="summary_large_image">
となっているか確認します。
summaryなら、小さい画像形式になる可能性があります。
「画像が表示されない」のではなく、想像していたカード形式と違うだけということもあるため、ここは分けて考えるべきです。
WordPress・SWELLならSEO SIMPLE PACKを確認する
SWELLを使っている場合、OGP設定はテーマ本体ではなくSEOプラグイン側で管理する構成が基本です。
SWELL公式も、SEO SIMPLE PACKによってTwitterカードなどのOGP設定が可能だと案内しています。
SEO SIMPLE PACK自体もWordPress公式ディレクトリで公開されており、FacebookやTwitter向けのOGP設定に対応しています。
SEO SIMPLE PACKのOGP設定を確認する
WordPress管理画面から、
「SEO PACK → OGP設定」
を確認します。
SWELL公式FAQでも、Xでアイキャッチ画像が表示されない場合には、
- SEO SIMPLE PACKなどのSEOプラグインが有効か
- OGP設定でTwitter用設定が有効になっているか
- 記事にアイキャッチ画像が設定されているか
を確認するよう案内されています。
SWELL利用者なら、まずここを見るべきです。
いきなりAll in One SEOやYoast SEO、Rank Mathなどを追加する必要はありません。
むしろ、すでにSEO SIMPLE PACKがOGPを出力している状態で別のSEOプラグインまで追加すると、同じ種類のタグを複数のプラグインが出力する可能性があります。
直すためにプラグインを増やした結果、原因まで増える。WordPressでは妙にありがちな悲劇です。
SEO SIMPLE PACKならsummary_large_imageが標準になっている
現在のSEO SIMPLE PACKでは、Twitterカードのデフォルト値はsummary_large_imageになっています。
WordPress.orgに掲載されている変更履歴を見ると、バージョン2.2.5でtw_cardのデフォルト値がsummary_large_imageへ変更されています。
そのため、現在のSEO SIMPLE PACKを普通に使っているなら、
「SEO SIMPLE PACKは初期状態でsummaryだから画像が小さい」
と決めつけるのは危険です。
古い記事や古い設定を引き継いでいる場合は別ですが、まず実際のページソースを確認するのが確実です。
サムネイル画像のサイズと形式も確認する
OGP設定が正しくても、画像側に問題があれば正常に表示されない場合があります。
ブログ用なら、私は1200×630px前後の横長画像にしておくのが扱いやすいと思います。
Open Graph用画像として広く使われている比率で、X以外のSNSでも使いやすいからです。
WebPだから表示されないとは限らない
ここは古い情報に注意が必要です。
「XカードはJPEGとPNGだけで、WebPは使えない」
と説明している記事がありますが、旧X/Twitterカード仕様ではJPG、PNGだけでなくWebPやGIFもサポート対象として案内されてきました。
そのため、
WebPだったら即NG
と判断する必要はありません。
ただし、トラブルを切り分けたい場合はJPGやPNGに変更して確認する方法はあります。
SVGについては避けたほうが安全です。
画像ファイルが重すぎないか確認する
高画質だからといって巨大な画像をOGPに使う必要はありません。
ブログ用アイキャッチなら、表示品質を保ちながら数百KB程度まで軽くできるケースも多いです。
SEO SIMPLE PACKの利用者向けコミュニティでも、OGP画像が大きすぎてTwitterカード側で問題になった事例が報告されています。
Xだけでなくページ表示速度にも関係するため、画像は適度に圧縮したほうがいいでしょう。
画像URLが404になっていないか確認する
これはかなり重要です。
OGPタグが完璧でも、
<meta property="og:image" content="存在しない画像URL">
となっていたら意味がありません。
Xから見れば「画像があります」と教えられて取りに行ったら、そこに何もない状態です。
実際にWordPress系のサポートでも、Twitterカードに指定された画像URLが404だったため表示されなかった事例があります。
og:imageに書かれているURLをブラウザで直接開き、
- 画像が表示される
- ログインを要求されない
- 404にならない
- アクセス拒否にならない
ことを確認してください。
robots.txtやセキュリティ設定にも注意する
サイト側で外部ボットのアクセスを強く制限していると、Xがページや画像を取得できない場合があります。
特に注意したいのが、
- robots.txt
- CDN
- WAF
- セキュリティプラグイン
- Bot対策
- 海外IP制限
などです。
WordPressではWordfenceなどのセキュリティプラグイン、CloudflareなどのCDN、レンタルサーバー側のWAFを使っている人も多いでしょう。
OGPタグが正しいのにXだけカードが出ない場合は、X側のクローラーがページや画像へアクセスできているかも疑う必要があります。
ただし、セキュリティを丸ごとOFFにするのはおすすめしません。
原因を確認して、必要な範囲だけ調整すべきです。
noindexだからXカードが出ないとは限らない
元記事では「noindexだとXがページ情報を取得できない」と考えやすいのですが、ここは分けて考えたほうがいいです。
noindexは基本的に検索エンジンへ「検索結果に登録しないでほしい」と伝えるものです。
Xカード用のクローラーをアクセス禁止にする設定とは同じではありません。
問題になりやすいのは、robots.txtやWAFなどでページそのものへの取得を拒否しているケースです。
「noindexを外したら直るはず」と決め打ちするより、実際のOGP出力とアクセス状態を確認したほうが確実です。
設定を直したのにXで古い画像が表示される理由
ここまで全部正常なのに、まだ古いサムネイルが表示される。
この場合は、キャッシュを疑います。
XはURLの情報を取得したあと、そのデータを一定期間保持することがあります。
そのため、
- 最初に間違った画像で公開
- Xがその情報を取得
- WordPress側で画像を修正
- Xでは古い情報が残る
ということが起こります。
WordPress側のキャッシュを削除しただけでは、X側に残っている情報まで必ず消えるわけではありません。
ここが非常にわかりにくいところです。
Card Validatorだけに頼るのはおすすめしない
以前はTwitter公式の「Card Validator」が定番でした。
URLを入力してTwitterカードを確認する方法が、多くの記事で紹介されています。
しかし現在は、Xの旧Cards関連ドキュメント自体が以前と同じ形では公開されておらず、旧URLから現在のX Developer Platformトップへ転送されるページもあります。
旧Card Validatorについても、アクセス環境によってログインやアクセス制限が入る状態があります。
そのため2026年現在は、
「Card Validatorに入れれば全部解決」
という説明だけでは不十分です。
私はまずページソースを見ることをおすすめします。
確認するのは次の3つです。
<meta property="og:image" content="画像URL">
<meta property="og:title" content="記事タイトル">
<meta name="twitter:card" content="summary_large_image">
これだけでもかなり原因を絞れます。
Xでサムネイル画像が出ないときの最終チェックリスト
最後に、上から順番に確認してください。
- WordPressの記事にアイキャッチ画像がある
og:imageが出力されているog:imageの画像URLを直接開けるtwitter:cardが出力されている- 大きな画像にしたいなら
summary_large_imageになっている - 画像が極端に大きすぎない
- 画像が404になっていない
- HTTPSで画像へアクセスできる
- robots.txtなどでアクセスを拒否していない
- WAFやCDNがXのアクセスを止めていない
- SEOプラグインを複数使ってOGPタグが重複していない
- WordPressやCDNのキャッシュを確認した
- X側のキャッシュで古い情報が残っている可能性を考えた
この順番なら、「とりあえずプラグインを入れ直す」よりはるかに原因を見つけやすいです。
まとめ
Xでサムネイル画像が表示されない場合、原因は単純に「アイキャッチ画像がない」だけとは限りません。
重要なのは、
画像 → OGP → Xカード → アクセス → キャッシュ
の順番で確認することです。
WordPress、とくにSWELL+SEO SIMPLE PACKを使っている場合は、まずアイキャッチ画像とOGP設定を確認し、ページソースのog:imageとtwitter:cardを見てください。
ここが正常なら、次に画像URL、WAFやCDN、X側のキャッシュを疑います。
逆におすすめしないのは、原因が分からないままSEOプラグインを追加したり、テーマを変えたりすることです。直るどころか、新しい問題まで増えかねません。
Xの仕様は今後も変わる可能性があります。
それでも、実際にページから何のOGP情報が出力され、画像へアクセスできるのかを確認するという基本は変わりません。
サムネイルが出ないときほど、設定を片っ端から触るのではなく、一つずつ原因を潰す。
結局、それが一番早いです。


コメント