”送信されたURLにnoindexタグが追加されています” をAll in One SEOの設定で一発解決

PHP

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にて修正の検証を行ってエラーが消えれば問題解決ですね。

この方法が同じ問題の人への助力になれば幸いです。

以上。

PHP日常豆知識
スポンサーリンク
Toufuをフォローする

コメント

タイトルとURLをコピーしました