メニュー 閉じる

プラグインなしでメタ説明を入れる

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

<?php
add_post_type_support( 'page', 'excerpt' );
?>

次に、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にはメタ説明を追加する機能が付いてます。