※phpファイルを編集する際は、必ずバックアップを取ってから作業を開始して下さい。
WordPressで構築したウェブサイトに “descriptionタグ” を設定します。
プラグインは使いません。
All in One SEOなどを導入している場合は生成されている可能性もありますので、先にソースコードを確認して下さい。
<meta name="description" content="ウェブサイトの概要" />
キャッチフレーズを入力する
ダッシュボードの「設定」>「一般」でキャッチフレーズを入力します。
ここで入力した内容がトップページの descriptionタグの中に表示されます。
入力したら「変更を保存」。
投稿・固定ページは抜粋を使って設定する
トップページ以外の投稿・固定ページは「抜粋」に入力した内容を descriptionタグとして使用します。
固定ページには抜粋がないため、functions.php を編集して入力項目を作る必要があります。
こちらについては後述します。
投稿の編集ページの中に「抜粋」が表示されていない場合は、「表示オプション」をクリックします。
開いたウィンドウの中の「抜粋」にチェックを入れます。
編集ページに「抜粋」入力欄が表示されるので、入力して「公開」または「更新」。
固定ページで「抜粋」の機能を有効にする
functions.php に次のコードを追加します。
functions.php は、「外観」>「テーマエディター」から編集できますが、入力時にミスがあるとサイトが真っ白…
ということもあるので、FTPクライアントを使ってアップロードする方法をおすすめします。
add_post_type_support( 'page', 'excerpt' );
固定ページを開き、「抜粋」が追加されていることを確認し、入力を済ませて下さい。
投稿同様、項目が表示されていない場合は「表示オプション」を開いて「抜粋」にチェック。
descriptionタグとして表示する
header.php を開き、<head></head>
中に次のコードを追記します。
<?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 else: ?> <meta name="description" content="<?php the_excerpt();?>" /> <?php endif; ?>
抜粋の前後に表示される<p>タグを消去する
ソースを確認すると、この段階で descriptionタグが追加されているのが確認できると思います。
前後に挿入されている<p>タグは不要なので、最後に<p>タグを削除するためのコードを追加します。
functions.php に次のコードを追記。
remove_filter('the_excerpt', 'wpautop'); remove_filter('term_description','wpautop');
トップページ、投稿・固定ページのソースコードの中に descriptionタグが追加されていることが確認できたら作業は完了です。