Google search consoleにて「送信されたURLにnoindex タグが追加されています」というメッセージがあり、詳細を見てみると大量のページがエラー扱いになっていることが判明しました。
私の場合、アーカイブのタグに関してすべてがインデックス送信されているようですが、そもそもnoindexに設定しているはずなのにサイトマップに登録されているという矛盾によりこのような事態になっているようです。
All in One SEOを使用している人はおそらく方法2を試していただければすぐに解決するかと思いますのでそちらまで読み飛ばしてもらっても大丈夫かと思います。
方法1 function.phpに以下を追記して解決
function.php
function set_noindex(){
if ( is_category() || is_tag() ) {
echo '<meta name="robots" content="noindex,follow" />';
}
}
add_action('wp_head', 'set_noindex');
以上の方法で解決する場合もあるようです。
私の場合はこれでは解決しませんでした。原因はAll in One SEOというアドオンで自動的にsitemap.xmlを生成しているため、phpの記述とxmlがバッティングしてしまっていたようです。
方法2 All in One SEOのタクソノミー設定を変更する
私の場合はこちらで解決しました。
方法1で述べたように、このアドオンで自動生成されているので、こちらの設定を変更すればいいということですね。
さて、問題になっているのがtagやcategoryなどのサイトマップです。
私の場合、この辺はnoindexに設定しているのですが、サイトマップが生成されてしまっているのでこのサイトマップを生成しないようにします。
All in One SEOの設定画面を開き、タクソノミーの設定へ行きます。
私の場合は、「全タクソノミーを含める」にチェックボックスが入っていたため、こちらのチェックを外します。
また、デフォルトではチェックを外した後に「カテゴリー」と「タグ」にさらにチェックが入っているため、このチェックも外します。
変更を保存した後、https://サイトのURL/sitemap.xml を確認します。
変更前はtag/ や category/ などのサイトマップがあったと思いますが、設定変更後にはチェックを外した項目のサイトマップがなくなっているかと思います。
あとは改めてGoogle Search Consoleにて修正の検証を行ってエラーが消えれば問題解決ですね。
この方法が同じ問題の人への助力になれば幸いです。
以上。
コメント