SNSでの見栄えと信頼性を両立する設計思想と実装方法
はじめに
SNSで記事をシェアしたとき、「画像が出ない」「タイトルが変」「説明が古いまま」…そんな経験はありませんか?
その原因の多くは、OGPタグやTwitterカードの設定ミスにあります。
この記事では、WordPressでOGPとTwitterカードを正しく・効率的に設定する方法を、設計思想から丁寧に解説します。
SNSでの見栄えを整え、信頼されるシェア体験を実現しましょう。
1. OGPとTwitterカードの基本構造と違い
✔ OGPタグとは?
OGP(Open Graph Protocol)は、FacebookやLINE、Slackなどで使用される共通メタタグ仕様です。
ページのタイトル・説明文・画像URLなどを <head>
内に記述することで、SNSでシェアされた際にリッチな表示を実現します。
<meta property="og:title" content="記事タイトル">
<meta property="og:description" content="記事の説明文">
<meta property="og:image" content="https://example.com/image.jpg">
<meta property="og:url" content="https://example.com/page">
✔ Twitterカードとは?
Twitterが独自に提供するメタタグ仕様で、ツイート内でリッチコンテンツを表示するために使用されます。
<meta name="twitter:card" content="summary_large_image">
<meta name="twitter:title" content="記事タイトル">
<meta name="twitter:description" content="記事の説明文">
<meta name="twitter:image" content="https://example.com/image.jpg">
2. SNSでの表示を左右する「よくある設定ミス」
ミス内容 | 解説 |
---|---|
相対URLの使用 | SNSは絶対URL(https://〜)でないと画像を読み込めません |
画像サイズが小さい | Facebookは1200×630px以上、Twitterは1200×675px以上が推奨 |
固定のタイトル・説明文 | 投稿ごとに動的に出力しないと、魅力が伝わりません |
twitter:card が未設定 | Twitterでカードが表示されず、ただのリンクになります |
SNSキャッシュの影響 | 設定変更後も古い情報が表示されることがあります |
3. WordPressでの正しい設定方法(コード例あり)
✔ functions.php に関数を定義
function get_og_image_url() {
if (is_singular() && has_post_thumbnail()) {
return get_the_post_thumbnail_url(get_queried_object_id(), 'full');
}
return get_template_directory_uri() . '/assets/images/default-ogp.jpg';
}
function get_seo_description() {
$site_description = get_bloginfo('description');
if (is_singular()) {
global $post;
if (has_excerpt($post->ID)) {
return wp_strip_all_tags(get_the_excerpt($post->ID));
} else {
return wp_trim_words(wp_strip_all_tags($post->post_content), 30, '…');
}
}
return $site_description;
}
✔ head.php にタグを出力
<meta property="og:title" content="<?php echo esc_attr(wp_get_document_title()); ?>">
<meta property="og:description" content="<?php echo esc_attr(get_seo_description()); ?>">
<meta property="og:image" content="<?php echo esc_url(get_og_image_url()); ?>">
<meta property="og:url" content="<?php echo esc_url(get_permalink()); ?>">
<meta property="og:type" content="<?php echo is_singular() ? 'article' : 'website'; ?>">
<meta name="twitter:card" content="summary_large_image">
<meta name="twitter:title" content="<?php echo esc_attr(wp_get_document_title()); ?>">
<meta name="twitter:description" content="<?php echo esc_attr(get_seo_description()); ?>">
<meta name="twitter:image" content="<?php echo esc_url(get_og_image_url()); ?>">
4. SNSでの表示確認とキャッシュ対策
ツール | 目的 |
---|---|
Facebook Sharing Debugger | OGPの表示確認とキャッシュクリア |
Twitter Card Validator | Twitterカードの表示確認とキャッシュクリア |
5. まとめ:SNSで信頼される記事にするために
OGPとTwitterカードは、SNSでの見栄えと信頼性を左右する重要な要素です。
WordPressでは、関数化による動的出力が最も効率的で、保守性も高いです。
SNSでの表示確認とキャッシュ対策も忘れずに行いましょう。
また、OGPやTwitterカードの設定について不明点があれば、お気軽にお問い合わせください。
Webサイトの信頼性向上やSNSの活用方法に関して、専門的なサポートを提供しています。あなたのWeb開発を、設計思想からサポートいたします。