Googleサーチコンソール(旧ウェブマスターツール)にサイトを登録する際、旧バージョンにあった、wwwありなしどちらを正規アドレスにするかを選択する画面が見当たらなくなったと思います。
通常、
- http://abc.com
- https://abc.com
- http://www.abc.com
- https://www.abc.com
と4バージョンのサイトアドレスをサーチコンソールには登録し、その中でGoogle検索に表示させたい正規アドレスを選ぶ項目があったのですが、新サーチコンソールではその項目が無くなり、さらに旧サーチコンソール画面に戻しても、この項目が見当たらなくなりました。
じゃあ、どうやって新サーチコンソールでは、
http/https、wwwあり/wwwなし、どれが正規アドレスなのかを伝えればいいのか?
それについて解説していきます。
新サーチコンソールでは、wwwありなしを選択する画面が廃止された!
新サーチコンソールでも、今まで通り、http/https,wwwありなしの4バージョンのサイトアドレスを登録した方が良いのは変わりません。
変わりませんが、wwwありなし、どちらを優先するのかという項目は廃止されました。
旧サーチコンソール画面に戻しても、もうこの画面は出てきません。
「でも、4バージョンのアドレスをサーチコンソールに登録したら、どれが正規アドレスなのか伝わらないじゃないか?wwwありなし、ごちゃまぜで登録されちゃうのでは?」
という心配がありますよね。SEOにもそれで悪い影響が出るのではないかと。
これについて、Googleは
「別にどれが正規アドレスかは、サーチコンソールで設定しなくても判断できるので、不要な機能として削除した」
といった旨の声明が出ているようです。
じゃあ実際どうやって、Googleは正規アドレスを判断してるのか、
どうやって正規アドレスをGoogleに伝えればいいのかをここから解説していきます。
基本的に、サーバーやWordPressが勝手に正規アドレス処理をしてくれてる
実は、通常、何も設定しなくても、サーバーやWordPress自体が、どれが正規アドレスなのかを分かるように勝手に処理してくれてます。
どういう事かというと、あなたのサイトのアドレス4バージョンを
ブラウザのアドレスバーに入力してみてください。
- http://abc.com
- https://abc.com
- http://www.abc.com
- https://www.abc.com
アドレスバーにこの4バージョンを入力した時に、自動的に、1つのバージョンに転送されませんか?
例えば
http://abc.comと入れても、勝手にhttps://abc.comに転送されるし、
https://www.abc.comと入れても、勝手にhttps://abc.comに転送されるという具合にです。
*つまり、この例では、https://abc.comが正規アドレス登録されている。
もしこのように、ちゃんとどれを入れても、勝手に1つのアドレスに転送されるのであれば、
その転送されたアドレスが、正規バージョンとしてすでに設定してあるという事ですから、
Googleは、ちゃんとあなたの正規アドレスを理解しているので、
サーチコンソールで何もしなくても大丈夫という事なんです。
Xサーバーなんかだと、この設定に最初からなってます。
WordPressのここをチェックすれば、正規アドレスが分かる
また、WordPressを使ってる場合も、基本的に、「設定→一般」の
このWordPressアドレスとサイトアドレス部分に、正規にしたいアドレスを入れとけば、
これが正規アドレスになるはずです。(ただし転送はされてない場合があるので、注意。)
仮に正規アドレスに自動転送されない場合でも、
どれが正規アドレスなのかが、Googleに伝わっていればOKです。
canonicalタグでどれが正規アドレスかを判断も可能
また、どれが正規アドレスなのかGoogleが判断する材料として、canonicalタグがあります。
あなたが自分のウェブサイト(ブログ)のどの記事ページでも良いので、
トップページ以外の記事ページに行き、
右クリックして「ソースを表示」を選び、
「canonical」で検索してください。
canonicalの後に続くアドレスが、正規アドレスです。
この画像の例なら、https://nebikatsu.com(wwwなし)が正規アドレスって事です。
通常WordPressは、自動的にこうやってcanonicalタグでどれが正規アドレスなのかを発信してるので、サーチコンソールで設定しなくても、ちゃんとGoogleにどれが正規アドレスか伝わってるわけです。
canonicalタグがない場合はどうする?
canonicalタグが付いておらず、どうも正規アドレスがGoogleに伝わってない、こんな場合はどうすれば?と思ったら、自分でcanonicalタグが自動付与されるように設定すればOKです。
functions.phpに以下のコードをコピペしてください。(子テーマでOK)
(やる前に必ずバックアップを取ってください。)
コピーしました
コピー
remove_action('wp_head', 'rel_canonical');
add_action( 'wp_head', 'add_canonical' );
function add_canonical() {
$canonical = null;
if( is_home() || is_front_page() ) {
$canonical = home_url();
} elseif ( is_category() ) {
$canonical = get_category_link( get_query_var('cat') );
} else if(is_tag()){
$canonical = get_tag_link(get_queried_object()->term_id);
} elseif ( is_search() ) {
$canonical = get_search_link();
} elseif ( is_page() || is_single() ) {
$canonical = get_permalink();
} else{
$canonical = home_url();
}
echo '<link rel="canonical" href="'.$canonical.'">'."\n";
}
これでcanonicalタグが、各記事ページに自動付与されます。
正規アドレスに自動転送する方法
canonicalタグさえちゃんと入ってれば、googleは勝手に正規アドレスを判別してくれるので問題ないですが、一番ベストなのは、どのアドレスに来ても、正規アドレスに転送される設定も併用されてる事です。
設定方法
.htaccessの末尾に以下を書き足してください。
*必ずバックアップを取ってからやってください。
*httpsのサイトをすでに使ってる事前提です。httpのサイトの場合は、以下のhttpsをhttpに変えてください。
httpsのwwwありに統一
コピーしました
コピー
RewriteEngine on
RewriteCond %{HTTP_HOST} ^ example \.com [NC]
RewriteRule ^(.*) https://www. example.com/$1 [R=301,L]
*2行目、3行目のexample と .com 部分を自分のサイトのアドレスに変えてください。
httpsのwwwなしに統一
コピーしました
コピー
RewriteEngine on
RewriteCond %{HTTP_HOST} ^www\.example\.com$
RewriteRule ^(.*)$ https://example.com/$1 [R=301,L]
*2行目、3行目のexample と .com 部分を自分のサイトのアドレスに変えてください。
これで、どのアドレスに来ても、正規アドレスに自動転送されるようになります。
新サーチコンソールでhttp/https、wwwありなしを正規アドレスに統一する方法・まとめ
というわけで、まとめると
- 新サーチコンソールでは、wwwありなしを指定する機能は廃止された
- http/https,wwwありなし指定するにはcanonicalタグで指定する
- 正規アドレスに自動転送する設定も合わせてしておく
これで、ちゃんとサーチコンソールにも、どれが正規アドレスなのかが理解されるので、Google検索のインデックスにも、正規アドレスのみが表示されるようになります。
以下の記事も参考にしてください。
サーチコンソールとアナリティクスの違い。サチコの方が実は超重要。