WordPressでショートコードを使って外部PHPファイルを読み込む方法
WordPressでサイトを構築している方には馴染みのあるショートコード。例えばお問い合わせのプラグ...
2024年7月12日
ブログ
Web制作
2023年8月1日
Twitterで記事をシェアしたときに、期待したOGP画像が表示されないことはありませんか?
この記事では、その解決法について解説します。
目次
OGPタグは、以下のようにHTMLの<head>部分に記述されます。
<meta property="og:image" content="【画像URL】">
<meta name="twitter:card" content="summary_large_image">
これらのタグは、ウェブページがSNS上で共有されたときにどのような表示にするかを制御するものです。しかし、正しく記述していても画像が表示されない場合があります。
Twitterでは以前、ページのプレビューを確認できる「Card Validator」ツールを提供していました。しかし、2022年をもってこのツールは廃止され、現在は使用できません。
表示されない一因としては、Twitter側のキャッシュが考えられます。キャッシュが原因の場合、OGP画像のURLにパラメータを追加して再度試すと、正しく表示されることがあります。
しかし今回、私が遭遇した問題は異なりました。
実は、Twitterのクローラには特定のサイズ制限があります。ページ全体が一定のサイズを超えると、「ERROR: Fetching the page failed because the response is too large」というエラーが発生するのです。
この問題に直面したのは、最近私たちが制作したニチリンインターナショナル株式会社様のウェブサイトでした。サイトのデザインには、SVGを用いたアニメーションが特徴的で、そのためのSVGコードが非常に長くなってしまいました。また、PCとモバイルで異なるアニメーションを表示するために、それぞれに対応したSVGコードをページ内に全て含めていたため、一度に読み込まれるデータ量が大きくなってしまっていました。
この結果、ページ全体のサイズが大きくなりすぎ、Twitterのクローラによるページ取得がうまく行かなくなってしまいました。これが「ERROR: Fetching the page failed because the response is too large」のエラーメッセージの原因でした。
この問題を解決するために、Javascriptを使って必要なときだけSVGを出力するように変更。これにより、ページ全体のサイズを減らし、Twitterのクローラがページを正常に取得できるようになりました。
もしTwitterでOGP画像が表示されない場合、ページ全体のファイルサイズをチェックしてみてください。必要ない部分を削除したり、Javascritを使って表示を制御したりすることで、問題が解決するかもしれません。
WordPressでショートコードを使って外部PHPファイルを読み込む方法
WordPressでサイトを構築している方には馴染みのあるショートコード。例えばお問い合わせのプラグ...
2024年7月12日
さくらのレンタルサーバでWordPressのサイトをSSL化でつまずいたところ
今回新規でさくらのレンタルサーバ(スタンダード)+ラピッドの独自SSL(SNI SSL)を使ってWo...
2017年2月13日
本日、 19人が閲覧しました
© 2024 WEBLIC LLC