canonicalタグ
canonicalタグとは、HTML要素であり、このタグによって正規のバージョンを指定(URLの正規化)することが出来ます。(日本語では、カノニカルタグと言います。)
このURLの正規化を行うことで検索エンジンのクローラーに対してウェブサイト内の「重複するコンテンツ」の問題を防ぐ役割があります。
予期せぬ場合でも、重複するコンテンツはSEOに影響を及ぼす可能性があり、ページの正当な評価を検索エンジンから受けるために必須のタグです。
また、canonicalタグは、標準リンク要素であり、URLの正規化タグとも呼ばれています。
canonicalタグの歴史は古く、Google、マイクロソフト、Yahoo!が共同で作成し2009年頃に公開されています。(RFC6596でも2012年に説明されています。)
SEOに与える影響
canonicalタグを設定することで予期しない重複コンテンツを防ぐことが可能です。
重複コンテンツがあると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は「絶対パス(例)http://example.com/news」で記述します。「相対パス(例)/news」ではありません。
良くある質問
canonicalタグに関して良くある質問を掲載しております。
- robots.txtでブロックされている場合
- ページがnoindexされている場合
- 指定のURLがリダイレクトされている場合
- 構文が間違っている場合
など、は「rel=”canonical”」を間違えた場合、Googleは無視する又は従わない方法を取る場合があります。単に指定するURLが別のURLになっている場合は、そのページが正規化されているだけとなります。
検索結果に影響を及ぼす可能性があるので、すぐに修正を行いましょう。
はい、なるべくすべてのページにcanonicalタグを設定してください。
重複する可能性があるページや、重複ページのみにcanonicalタグを入れるのではなく、可能な限りすべてのページにcanonicalタグを入れておくことを推奨します。
理由として、現在アプリやSNS、その他様々な方法でウェブページのリンクにユーザーがアクセスし、制御することが出来ないからです。
開発あるあるですが、想像もしないパラメーターをサイトが吐き出している場合もあります。
はい、JavaScript(JS)で行ったrel=”canonical”もGoogleは処理を行ってくれます。
かなり昔はJavaScriptでcanonicalタグの処理は行えませんでしたが現在は処理が行えます。(Googleの回答である)「ジョン・ミュラー氏のツイート」「マーティンス・プリット氏のツイート」を確認しておきましょう。
著作者:辻 昌彦
コメント・フィードバック
フィードバックいただいた、SEOへのご意見や見解は内容を管理者が確認し、当文章に掲載される可能性がございます。