WordPressプラグインなしでメタ説明を入れる【All in One SEOやYoast SEO不要】

WordPressプラグインなしでメタ説明を入れる【All in One SEOやYoast SEO不要】 WordPress

こんにちは、mickです。

All in One SEOプラグインがVer4になってから、無料版が使いづらくなりました。

なので、少しずつ脱All in One SEOプラグインを進めてます。
All in One SEOプラグインある機能のひとつが「メタ説明の挿入」です。

この記事では、All in One SEOプラグインなしで、メタ説明を入れる方法がわかります。

メタ説明について軽くおさらい

SEO対策として欲しいのがメタ説明(メタディスクリプション)の追加。
メタ説明を使えば検索結果でユーザーに自分のWebページを強くアピールできます。

実は、Googleの検索エンジンとしては、効果が薄いようなコメントもあります。

本来の Meta description の役割は、検索結果に概要を伝えることです。ディスクリプションが重複するくらいなら入れないほうが良いといっていますが、そうなると検索結果のサイト概要は何が表示されるのでしょう。答えは「重複するくらいなら、Googleがサイト内の情報から作成する自動スニペットに任せたほうがよい」といっているようです。

効果的なWordPressの使い方「抜粋」を編集する

なので、神経質にはならなくてOK。
なくても検索エンジンには影響がないということなので。

それでも、検索結果ででてきた自分のWebページをアピールするチャンスなので、正しく(重複しないように)使いたいです。

プラグインなしでメタ説明を追加する

早速プラグインなしでメタ説明をWordPressに追加していきます。
手順はこんな流れ。

  1. 固定ページの抜粋の項目を追加する
  2. headタグの中にメタ説明を挿入する
  3. 挿入されるメタ説明を整える

順番に説明していきます。

固定ページの抜粋の項目を追加する(コピペOK)

基本的に、固定ページで抜粋を入力する項目はでてません。
そこで、次のコードを functions.php に追加します。

<?php
add_post_type_support( 'page', 'excerpt' );
?>
headタグの中にメタ説明を挿入する(コピペOK)

次に、headタグの中にメタ説明が入るようにしていきます。
次のコードを、ヘッダー部分(普通は、header.php)に追加します。

<?php if ( is_single()): ?>
<?php if ($post->post_excerpt){ ?>
<meta name="description" content="<? echo $post->post_excerpt; ?>" />
<?php } else {
        $summary = strip_tags($post->post_content);
        $summary = str_replace("\n", "", $summary);
        $summary = mb_substr($summary, 0, 120). "…"; ?>
<meta name="description" content="<?php echo $summary; ?>" />
<?php } ?>
<?php elseif ( is_home() || is_front_page() ): ?>
<meta name="description" content="<?php bloginfo('description'); ?>" />
<?php elseif ( is_category() ): ?>
<meta name="description" content="<?php echo category_description(); ?>" />
<?php elseif ( is_tag() ): ?>
<meta name="description" content="<?php echo tag_description(); ?>" />
<?php else: ?>
<meta name="description" content="<?php the_excerpt();?>" />
<?php endif; ?>

これをコピペすれば、次をメタ説明として使ってくれるようになります。

  1. TOPページでは、[キャッチフレーズ]の内容
  2. 投稿や固定ページでは、[抜粋]の内容
  3. カテゴリやタグページでは[説明]の内容
挿入されるメタ説明を整える(コピペOK)

このままだと、自動的にp要素が入ることがあります。
次を functions.php にコピペしてそれを、防ぎます。

<?php
remove_filter('the_excerpt', 'wpautop');
remove_filter('term_description','wpautop');
?>

実装時の注意

メタ説明の機能は、WordPressのテーマの機能としてある場合があるので注意です。
例えば、無料テーマのCocoonにはメタ説明を追加する機能が付いてます。

まとめ。

WordPressプラグインなしでメタ説明を入れる方法を紹介しました。

この方法は、次のWebページが助けてくれました。
ありがとうございます。

⇒ canonicalタグやdescriptionタグをプラグインを使わずに簡単設定|WordPressの初期設定を見直そう

記事を読んでくれて嬉しいです。
今日もありがとうございました。

初稿 2021/02/01