httpからhttpsに移行したからcanonicalを設定してみた(WordPress)

httpからhttpsに移行する際searchconsoleに新しく登録することになり、

ぺーじURLは301リダイレクトを設定するだけでhttpsのページに移行できるのですが

searchconsoleにはhttpとhttpsが両方存在することになります

Googleの発表としてはhttpsが優先的にインデックスされるとのことですが念のため

canonicalを設定してみようと思います

canonicalを指定することで類似するURLを正規化することができます

スポンサーリンク

canonical設定方法

通常の設定方法

通常トップページを指定するときはheaderに下記を追加することで対応できます

<link rel="canonical" href="https://example.com">

ドメインは書き換えて使用

WordPressの設定方法

ページごとに全ページ設定するのは大変なのでWordPressの場合はfunctions.phpに設定します

やり方はコードをfunctions.phpにコピペするだけ!

/*canonical 開始*/
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 終了*/

Googleさんにうまくインデックスしてもらう手助けにもなるので設定して損はなし!

コメント