プラグイン「wordpress meta robots」を止めてカスタムフィールドで対応した方法
公開日:
最終更新日:2014/07/11
SEO対策の一つ「低品質コンテンツの対応」として、投稿ページや固定ページ単位にmeta robotsタグが設定できるプラグイン「wordpress meta robots」ですが、残念な事にカテゴリーページやタグページは自動で「no index」になってしまいます。プラグインのコードを書き変えて対応することもできますがプラグインがアップデートされると元に戻ってしまうのでカスタムフィールドを使って対応するように変えた時に書いたコードのメモ書きです。
meta robotsタグをカスタムフィールド値で対応した方法
meta robotsタグとは
HTMLページのヘッダーに記入する以下のコードで、ページ単位に検索エンジンに対してインデックスの可(index)・不可(noindex)、リンクをたどる事の可(follow)・不可(nofollow)を指示する物です。
1 2 3 4 5 6 |
<meta name="robots" content="index,follow" /> <meta name="robots" content="index,nofollow" /> <meta name="robots" content="noindex,follow" /> <meta name="robots" content="noindex,nofollow" /> |
wordpressは動的にアーカイブページが生成されますから内容が重複したページが増えますし、投稿ページや固定ページで検索エンジンにインデックスして欲しくないページもあります。その様な時に記入するメタタグです。
ページ単位のmeta robotsタグの設定例
No. | ページ名 | 指定値 |
---|---|---|
1 | トップページ | index,follow |
2 | カテゴリーページ | index,follow |
3 | タグページ | noindex,follow |
4 | アーカイブ(年月)ページ | noindex,follow |
5 | 投稿ページ | index,follow ←ここを入力値に |
6 | 固定ページ | index,follow ←ここを入力値に |
7 | 上記以外 | noindex,follow |
※カテゴリーページやタグページをindexにするかnoindexにするかは、カテゴリーやタグの付け方によって変わる事もある。
カスタムフィールドから入力できる様にfunction.phpにコードを追加
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 |
//カスタムフィールドを使ってmeta robotsを指定 function my_custom_fields() { global $post; $robots = get_post_meta($post->ID,'robots',true); if(empty($robots)) { $robots = 'index, follow'; } echo '<p>検索ロボット(カンマ区切り)<br />'; echo '<input type="text" name="robots" value="'.esc_html($robots).'" size="50" /></p>'; } // カスタムフィールドの値を保存 function save_custom_fields( $post_id ) { if(empty($_POST['robots'])) { $_POST['robots'] = 'index, follow'; } update_post_meta($post_id, 'robots', $_POST['robots'] ); } |
※投稿ページや固定ページは、’index, follow’を初期値と考え、noindexとかnofollowにしたい時にはカスタムフィールドの値を変える
カスタムフィールドで入力したmeta robotsの値をテーマファイルに反映
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 |
<?php // カスタムフィールドの値を読み込む $custom = get_post_custom(); if(!empty( $custom['robots'][0])) { $robots = $custom['robots'][0]; } else { $robots = 'index, follow'; } ?> <?php if(is_home()): // トップページ ?> <meta name="robots" content="index, follow" /> <?php elseif(is_single()): // 投稿ページ ?> <meta name="robots" content="<?php echo $robots ?>" /> <?php elseif(is_page()): // 固定ページ ?> <meta name="robots" content="<?php echo $robots ?>" /> <?php elseif (is_category()): // カテゴリーページ ?> <meta name="robots" content="index, follow" /> <?php elseif (is_tag()): // タグページ ?> <meta name="robots" content="noindex, follow" /> <?php elseif(is_404()): // 404ページ ?> <meta name="robots" content="noindex, follow" /> <?php else: // その他ページ ?> <meta name="robots" content="noindex, follow" /> <?php endif; ?> |
※上記のコードをテーマファイルのheader.phpに追加する。
※注意 コード追加箇所はテーマによって異なる。
まとめ
そもそも低品質なコンテンツは作成しない事が前提なのでしょうが、商品販売ページ等メーカー提供コンテンツや販社提供コンテンツがページの大半を占めるコンテンツには、このような対応が必要ではないかと思います。これはカスタマイズをしなくても WordPressの人気プラグイン「ALL in One SEO Pack」を使えば実現できますが、私はメタタグのDescriptionとkeywords設定にプラグイン『Meta Manager』を使ってますのでこの様な対応をしました。
Post Categories: SEO > Wordpress Tags:funcution.php
AD
関連記事
-
-
WordPress管理画面の投稿一覧にカスタムフィールドの項目を追加表示する方法
良く使うWordPress管理画面の投稿一覧ですが標準の表示項目は以下の7個です。通常のブログならカスタマイズする必要もないのでしょうが
-
-
簡単に自分のパソコン(PC)にWordPress開発環境を作る方法
ワードプレス(Wordpress)で既に稼働中サイトのテーマをカスタマイズする時に直接テーマファイルを触るのは危険です。別途サーバー上に
-
-
スマホ対応テーマ(レスポンシブデザイン)での投稿記事内の画像横並び表示方法
スマートフォン対応(スマホ最適化)したテーマを選んでも投稿する記事内のhtmlタグの書き方によっては表示が想定外って事もありますよね
-
-
「Stinger3」に1カラム テンプレートを追加する方法
このブログで使っているテーマ「Stinger3」はメインコンテンツ領域(横幅)が550pxとやや狭いです。いろんな方が横幅を広げるカスタ
-
-
著作権表示が要らない素材サイト「pixabay」が使えるプラグイン
ブログにアイキャッチ画像を設定することは、魅力的な画像が記事本文へと読み進みみたくなる要素の一つでありSNSでシェアされた時に目を引
-
-
WordPressの固定ページで投稿タグが設定できるようにするfunction.phpのコードサンプル
WordPressの固定ページはデフォルトでは投稿タグを設定することができません。固定ページを1カラムのランディングページとして使う場合
-
-
プラグインを使わずに自分でページングを実装するfunction.phpのコードサンプル
Wordpressで選んだテーマにページング機能が付いていない場合は「WP-PageNavi」というプラグインを使うか、該当テーマ内のテ
-
-
WordPressの仕組みを理解する
WordPress(ワードプレス)は、深く仕組みを知らなくても簡単にブログやWebサイトが作れるようになっています。大概のレンタルサーバ
-
-
Exec-PHPを使わずに投稿ページや固定ページでphpを使いたい
投稿ページや固定ページに直接phpコードが書けるプラグイン「Exec-PHP」は、セキュリティ面に問題があるようなので使わない方が良い。
-
-
レスポンシブweb対応のWordPress無料テーマ「wsc7」を使ってみたので少し解説
Wordpressのレスポンシブデザイン無料テーマ「wsc7」を触ってみたので少し解説含む覚書メモです。 2011年10月25日にリリ