お問い合わせフォームやプライバシーポリシーのページにブログ内の検索結果のページ、はたまた特定カテゴリーのページを検索エンジンにインデックスされて欲しくないことがあります。
WordPressのテーマCocoonの場合、固定ページや記事ページを個別にnoindexにすることが可能ですが、検索結果のページをnoindexにすることが出来ません。
また、WordPressの初期カテゴリー「未分類」はデフォルト設定だと削除することが出来ません。
投稿設定から初期カテゴリー変更で未分類を削除出来ますが、あえて未分類カテゴリーを残しておきたい場合もあります。
ただ、未分類のカテゴリー内の記事数がゼロの場合、通常のリンクをたどって移動することはないですが、URLに「/未分類」など直打ちでアクセスす出来てしまいます。
ユーザーが直打ちでアクセスするのは検索エンジン的には問題ないように思いますが、検索エンジンのbotが未分類のカテゴリーにアクセスする可能性も考えられます。
検索エンジンのbotが「未分類」のページにアクセスしてきてもインデックスされないようにするには、ヘッダーにnoinddexの属性を加得ることで可能です。
このブログでも使用しているCocoon子テーマは、「テーマエディター」に「ヘッダーファイル」が用意されているのでブログのヘッダー領域に追記することが出来ます。
なので、ヘッダー領域を利用して「ブログ内検索結果・404・未分類カテゴリー」のページに「noindex」の属性を追加します。
ヘッダーファイルの「head-insert.php」ファイルを編集するので「functions.php」と違いコードミスでサイトが表示されない、管理画面に入れないリスクは少ないです。
ですが念のためバックアップを取ってから作業を行ってください。
Cocoon子テーマのヘッダーファイルを編集する
検索エンジンにインデックスさせない「noindex]を追加するには、インデックスしたくないページの「<haed>~</head>」内に「<meta name=”robots” content=”noindex”/>」を入れる必要があります。
Cocoon子テーマにはこのヘッダー領域内を編集できる「head-insert.php」が用意されています。
Cocoonテーマの「head-insert.php」へのアクセス
- WordPress管理画面に入る
- 外観
- テーマエディター
- テーマファイルの「tmp-user ▼」を開く
- 中に「head-insert.php」が入っている
FTPやレンタルサーバーのファイルマネージャーからは
/WordPressがインストールされてるディレクトリ/wp-content/themes/cocoon-child-master/tmp-user/head-insert.php
になります。
このhead-insert.phpには、アクセス解析のコードやmetaタグなどの追加が出来ます。
head-insert.phpに「<meta name=”robots” content=”noindex”/>」とコードを追記するだけです。これで検索エンジンにインデックスされなくなります。
しかし、「head-insert.php」にそのまま記入するとブログ内の全ページが検索エンジンにインデックスされなくなります。
それでは困ります
なので、インデックスさせたくないページのみnoindexのコードを表示する条件分岐を行います。
特定ページを条件にnoindexの属性のコードを追加する
ブログ内検索ページ、404ページ、未分類のカテゴリーページにnoindexを追加するコードです。
<?php if( is_search() || is_404() || is_category(1) ): ?>
<meta name="robots" content="noindex"/>
<?php endif; ?>
上記コードを「head-insert.php」の一番下の行に追記します。
if文の条件指定で下記表の条件に1つでも一致(True)したページならnoindex属性を入れます。
is_search() | ブログ内の検索ページならTrueを返す。それ以外のページはFalse |
is_404() | 404ページならTrue。それ以外のページはFalse |
is_category(カテゴリーID) | 指定したカテゴリーページならTrue。それ以外はFalse |
カテゴリーIDの確認は【投稿】>【カテゴリー】>【未分類】を開きブラウザのURLを見て「category&tag_ID=1」の番号がカテゴリーIDになります。
未分類のカテゴリーIDは通常「1」になっています。
noindex属性が追加されているかブラウザで確認する
ブラウザで検索ページや404ページ、「未分類」カテゴリーページなどにアクセスしてソースをから確認します。
Chromeの場合【Ctrl + u】でソースが開きます。
ソース内を「noindex」のキーワードで検索して「<meta name=”robots” content=”noindex”/>」出てきたら、noindexが追加されています。
また、トップページなど他のページも確認しましょう。
それで、「noindexが書いてありましたら、if文による条件分岐がうまく行ってない場合があります。「head-insert.php」に追記したコードに間違いが無いか確認します。
他のテーマでnoindexを追加するには
Cocoon以外のテーマでnoindexを追加するには、使用中のテーマに「header.php」などのヘッダーに関するファイル名を探していただき、そのファイルに先ほど記載したコードを追記します。
コードの追加は、出来るだけ親テーマに記入せず、子テーマに追加してください。誤って重要なコードの削除やコードミスなどによるトラブルに遭遇しにくくなります。
子テーマが無いテーマでも、任意で子テーマも作成することが可能です。