設定・メタボックス マニュアル

Kashiwazaki SEO Rich Preview Manager のグローバル設定、投稿別メタボックス、画像優先順位、出力形式、フィルター一覧を解説します。

グローバル設定(ksrpm_options)

設定画面で管理するすべてのオプション項目です。これらは wp_options テーブルに ksrpm_options キーで保存されます。

設定画面
グローバル設定画面の全体像
設定項目 説明
enable_ogp OGPメタタグの出力を有効化(true/false)
enable_twitter_card Twitter Card メタタグの出力を有効化(true/false)
enable_meta_thumbnail Meta Thumbnail タグの出力を有効化(true/false)
enable_pagemap PageMap DataObject の出力を有効化(true/false)
enable_robots_max_image robots max-image-preview メタタグの出力を有効化(true/false)
site_name og:site_name に使用するサイト名。空欄時はWordPressのサイトタイトルを使用
default_og_type 投稿のデフォルト og:type(article、blog など)。トップページは自動的に website
default_twitter_card デフォルトの Twitter Card タイプ(summary または summary_large_image)
default_image フォールバック用デフォルト画像のURL
fb_app_id Facebook App ID(fb:app_id メタタグに使用)
twitter_username Twitterユーザー名(@付き、twitter:site に使用)
post_types メタタグを出力する投稿タイプの配列(例: post, page)
enable_duplicate_checker 重複メタタグ検出チェッカーの有効化(true/false)

投稿別メタボックス

投稿編集画面に表示される「OGP Settings」メタボックスから、投稿ごとにリッチプレビュー情報をカスタマイズできます。ここで設定した値は、グローバル設定よりも優先されます。データは post_meta_ksrpm_* プレフィックスで保存されます。

メタボックス
投稿編集画面のメタボックス

メタボックスの設定項目

項目 説明
OG Title og:title、twitter:title に使用されるタイトル。空欄の場合は投稿タイトルが使用されます。
OG Description og:description、twitter:description に使用される説明文。空欄の場合は投稿の抜粋が使用されます。
OG Image og:image、twitter:image、Meta Thumbnail、PageMap に使用される画像URL。メディアライブラリから選択可能です。
OG Type og:type の値(article、blog、product など)。空欄の場合はグローバル設定のデフォルト値が使用されます。
Twitter Card Type twitter:card の値(summary または summary_large_image)。空欄の場合はグローバル設定のデフォルト値が使用されます。
ヒント

SNSでのシェア時に最適な表示にするため、OG Titleは25〜35文字程度、OG Descriptionは80〜120文字程度を目安に設定してください。

画像優先順位チェーン

リッチプレビューに使用される画像は、以下の優先順位で決定されます。すべての出力タイプ(OGP、Twitter Card、Meta Thumbnail、PageMap)で共通のロジックです。

1

カスタムOGP画像(メタボックスで設定した _ksrpm_og_image

2

投稿のアイキャッチ画像(Featured Image)

3

グローバル設定のデフォルト画像(ksrpm_options の default_image)

補足

デフォルト画像が未設定で、投稿にアイキャッチ画像もない場合、画像関連のメタタグは出力されません。SNSでのシェア表示を確実にするため、デフォルト画像の設定を推奨します。

画像優先順位と出力フロー
画像選定から各出力タイプへの処理フロー

出力形式の例

本プラグインは wp_head アクションで以下のメタタグを出力します。

OGPタグ

<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/post/">
<meta property="og:type" content="article">
<meta property="og:site_name" content="サイト名">
<meta property="fb:app_id" content="123456789">

Twitter Cardタグ

<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">
<meta name="twitter:site" content="@example">

Meta Thumbnail

<meta name="thumbnail" content="https://example.com/image.jpg">

PageMap

<!--
<PageMap>
  <DataObject type="thumbnail">
    <Attribute name="src" value="https://example.com/image.jpg">
    <Attribute name="width" value="1200">
    <Attribute name="height" value="630">
  </DataObject>
</PageMap>
-->

robots max-image-preview

<meta name="robots" content="max-image-preview:large">

重複メタタグ検出チェッカー

設定画面で「重複チェッカー」を有効化すると、他のプラグインやテーマが出力するOGP/Twitter Cardメタタグとの重複を検出し、管理画面に警告を表示します。

検出対象 説明
OGPタグの重複 og:title、og:description、og:image など同一プロパティの複数出力を検出
Twitter Cardタグの重複 twitter:card、twitter:title など同一nameの複数出力を検出
robotsタグの重複 max-image-preview 指定が複数存在する場合を検出
注意

他のSEOプラグイン(Yoast SEO、All in One SEO Pack など)がOGPタグを出力している場合、重複が検出されます。他プラグインのOGP出力機能を無効にしてください。

フィルターリファレンス(主要10件)

本プラグインは34種類以上のカスタムフィルターを提供しています。以下はよく使用される主要なフィルターです。

フィルター名 説明
ksrpm_og_title og:title の値をフィルタリング
ksrpm_og_description og:description の値をフィルタリング
ksrpm_og_image og:image の値をフィルタリング
ksrpm_og_url og:url の値をフィルタリング
ksrpm_og_type og:type の値をフィルタリング
ksrpm_twitter_card twitter:card の値をフィルタリング
ksrpm_twitter_image twitter:image の値をフィルタリング
ksrpm_meta_thumbnail Meta Thumbnail の画像URLをフィルタリング
ksrpm_pagemap_data PageMap DataObject の属性配列をフィルタリング
ksrpm_meta_tags 出力されるすべてのメタタグの配列をフィルタリング

フィルターの使用例

// og:title にサイト名を追加する例
add_filter('ksrpm_og_title', function($title) {
    return $title . ' | ' . get_bloginfo('name');
});

// 特定のカテゴリでOGP画像を固定する例
add_filter('ksrpm_og_image', function($image) {
    if (has_category('news')) {
        return 'https://example.com/news-ogp.jpg';
    }
    return $image;
});

// PageMapデータをカスタマイズする例
add_filter('ksrpm_pagemap_data', function($data) {
    $data['alt'] = get_the_title();
    return $data;
});
注意

フィルターで返す値は必ずサニタイズ済みの文字列にしてください。URLの場合は esc_url()、テキストの場合は esc_attr() を使用することを推奨します。