今回は、『description(メタディスクリプション)』を All in One SEO などのプラグインを使用せずに、設定する方法をご紹介いたします。
前置きはせずに、さっそく紹介しますね!
wordpress description プラグインなし
<head></head> 内に下記のコードを記述してください。
<?php if (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 elseif (is_tax()): ?>
<meta name="description" content="<?php echo term_description(); ?>">
<?php elseif (is_post_type_archive('news')): ?>
<?php // elseif (is_post_type_archive(array('news', 'products', 'staff'))): ?>
<meta name="description" content="<?php echo esc_html(get_post_type_object(get_post_type())->description); ?>">
<?php elseif (is_archive()): ?>
<meta name="description" content="">
<?php elseif (is_singular()): ?>
<!-- 『抜粋』に入力がない場合は、自動的に本文の冒頭から内容を表示(文字数はデフォルトで110文字) -->
<meta name="description" content="<?php echo get_the_excerpt(); ?>">
<?php endif; ?>
上記のコードで大体のページはカバーできると思いますが、足りない箇所は調整してください。
簡単にですが、コードの解説をします。
トップページ | 『設定』→『一般』→『キャッチフレーズ』の内容を表示 |
カテゴリー・タグ・タクソノミー一覧ページ | カテゴリー・タグ・タームの『説明』の内容を表示 |
カスタム投稿のアーカイブページ | カスタム投稿を設定した時の、『description』の内容を表示 |
アーカイブページ | 空にしておりますが、適宜変更してください |
投稿・カスタム投稿・固定ページ | まずは、『抜粋』の内容を表示 『抜粋』に入力がない場合は、自動的に本文の冒頭から内容をを表示(文字数はデフォルトで110文字) |
固定ページ の「抜粋」を追加する方法
デフォルトでは、固定ページに『抜粋』の入力欄がないため、下記のコードを『functions.php』に記述して、『抜粋』の入力欄を追加させてください。
function my_custom_init() {
add_post_type_support('page', 'excerpt');
}
add_action('init', 'my_custom_init');
カテゴリーやタグの『description』から <p>タグ削除する方法
カテゴリーやタグ・タクソノミー一覧ページの『description(メタディスクリプション)』では、勝手に<p>タグで文字が囲われてしまいます。
下記のコードを『functions.php』に記述して、<p>タグを削除してください。
remove_filter('term_description', 'wpautop');
今回は以上となります!