Canonicalタグ
canonicalタグとは、HTML要素。正規のバージョンを指定(URLの正規化)することで、検索エンジンのクローラーに対してウェブサイト内の「重複するコンテンツ」の問題を防ぐ役割がある。
予期せぬ場合でも、重複するコンテンツはSEOに影響を及ぼす可能性があり、ページの正当な評価を検索エンジンから受けるために必須のタグ。
また、canonicalタグは、標準リンク要素であり、「URLの正規化タグ」とも呼ばれる。
SEOのベストプラクティス
- 可能な限りすべてのページに設定しURLの正規化を行う
- 間違わないよう繰り返しチェックする
canonicalタグがSEOに与える影響
canonicalタグを設定することで予期しない重複コンテンツを防ぐことが可能。
重複コンテンツをGoogle検索エンジンが認識した場合、Googleはいずれか一方を選択して登録(インデックス)する。(もう一方のコンテンツはインデックスされない可能性が高い。)
重複するコンテンツを未処理に放置した場合、以下のことが起こる可能性がある。
- Googleがコンテンツを見つける(インデックス)することを遅延させる可能性
- 類似するコンテンツが多い場合、Googleのランク付けに問題が発生する可能性
- ランク付けするページの能力が低下する可能性
そのため、重複するコンテンツはGoogle検索エンジンに問題を引き起こす可能性があり、SEOに影響がある。
canonicalタグのコード例
// リンクタグを使用する場合 <html lang="ja"> <head> <title>SEO Wiki(SEOウィキ)</title> ... <link rel="canonical" href="https://seo-wiki.jp/" /> ... </head>
canonicalタグは<head>内に書き込み、「href=”正規化したいマスターURL“」を入れる。
// HTTPヘッダーを使用する場合 Link: <http://www.example.com/downloads/white-paper.pdf>; rel="canonical"
多くのブラウザでは、右クリック「ページのソースを表示」からcanonicalタグを確認することが可能。
また、注意点として正規化するURLは「絶対パス・プルパス(例)https://example.com/news」で記述。「相対パス(例)/news」では記述しない。
canonicalタグの歴史
canonicalタグの歴史は古く、Google、マイクロソフト、Yahoo!が共同で作成し2009年頃に公開されている。
(RFC6596でも2012年に説明されている。)
良くある質問
canonicalタグの設定を間違えた場合どうなるか?
間違えた場合、Google検索エンジンは「無視する」又は「従わない方法を取る」等場合がある。単に指定するURLが別のURLになっている場合は、そのページが正規化される。
以下、間違いの例。
- 指定のURLがrobots.txtでブロックされている
- 指定のURLがnoindexされている
- 指定のURLがリダイレクトされている
- canonicalタグの構文間違い
- httpとhttpsの間違い等
全てのページにcanonicalタグを設定する必要があるか?
アプリやSNS、その他様々な方法でウェブページのリンクにユーザーがアクセスし、制御することが出来ないため、全てのページにcanonicalタグを入れることが推奨される。
JavaScriptでcanonicalの設定を行った場合Googleは処理するか?
JavaScriptで行ったrel=”canonical”もGoogleは処理する。
ジョン・ミューラー氏がTwittreで回答済み。
出典
- 検索結果に優先的に表示させたいページの指定について(Googleセントラルブログ)
- The Canonical Link Relation