Google検索結果にサムネイル画像を表示

ホバリングするカワセミ

はじめに

Google検索結果画面で,タイトルの右側にサムネイル画像を表示させる設定をしてみた。
ブログ各記事毎のアイキャッチ画像をGoogle検索結果画面のサムネイル画像として表示させる。

function.php修正

WordPressの「テーマファイルエディター」から「functions.php」を開いて,一番最後に下記を張り付ける。

// サムネイル画像にアイキャッチを使用 「function.php」の最後に追加
add_action( 'wp_head', 'add_meta_to_head' );

function add_meta_to_head() {
    if ( is_singular() ) {
        $post_id = get_the_ID();
        $thumbnail_id = get_post_thumbnail_id( $post_id );

        if ( $thumbnail_id ) {
            $thumbnail_url = wp_get_attachment_url( $thumbnail_id );

            if ( $thumbnail_url ) {
                echo '<meta name="thumbnail" content="' . esc_url( $thumbnail_url ) . '" />';
            }
        }
    }
}

修正結果確認

修正後の確認は記事画面で右クリックして「ページのソース表示」又は「Ctrl+U」キーでソース画面を表示させて,「Ctrl+F」キーの検索窓から”thumbnail”を検索して下記のメタタグが表示されていれば良いみたい。

<meta name="thumbnail" content="サムネイル画像のURL" />

ソース画面

検索エンジンにアクセス許可

直リンク禁止設定をしている場合は,検索エンジンのアクセス許可を追加しないと,サムネイル画像は表示されない。

<Files ~ "\.(gif|png|jpg|jpeg|php)$">
## 関連サイトを許可
SetEnvIf Referer "^https://ドメイン名" chk_url
## アナリティクス用許可
SetEnvIf Referer "^http://google" chk_url
SetEnvIf Referer "^https://google" chk_url
SetEnvIf User-Agent "Google-Site-Verification" allowbot
## 各検索エンジンを許可
SetEnvIf User-Agent "Googlebot" allowbot
SetEnvIf User-Agent "msnbot" allowbot
SetEnvIf User-Agent "bingbot" allowbot
SetEnvIf User-Agent "Slurp" allowbot
## 
Require env chk_url
Require env allowbot
</Files>

おわりに

既にインデックスされている記事には影響しなくて,新たな投稿記事からサムネイル画像が表示されるようだが,Googleのルールにより必ずしも表示されるわけではない。

以下はGoogleの見解
Google は該当のサイトが画像のサムネイルを表示するほど質が高いとは考えられない場合はサムネイル画像を表示しない。

はたしてこのサイトの質は・・・(-_-;)汗

参考にしたサイト _(._.)_
 【2024年版】Google検索結果にサムネイルを表示させる方法とSEO対策 | 株式会社サンライズ・クリエイティブ (3rise-c.com)