「canonicalタグって何?どう使えばいいの?」
「同じコンテンツが複数のURLでアクセスできてしまう」
「重複コンテンツの問題をどう解決すればいい?」
Webサイトを運営していると、同じコンテンツに複数のURLでアクセスできてしまう状況が発生することがあります。これは重複コンテンツの問題を引き起こし、SEO評価が分散してしまう原因になります。
この問題を解決するのが「canonicalタグ(カノニカルタグ)」です。canonicalタグを正しく設定することで、検索エンジンに「正規のURL」を伝え、SEO評価を1つのURLに集中させることができます。
本記事では、canonicalタグの正しい使い方を徹底解説します。基本的な概念から、具体的な設定方法、よくある間違い、WordPressでの実装まで、canonicalタグを活用するために必要な知識をすべてお伝えします。
canonicalタグとは
まず、canonicalタグの基本的な概念を理解しましょう。
canonicalタグの定義
canonicalタグ(正式名称:rel=”canonical”)とは、同じまたは類似したコンテンツに複数のURLでアクセスできる場合に、「どのURLが正規(メイン)のURLか」を検索エンジンに伝えるためのHTMLタグです。
基本的な記述形式:
<link rel=”canonical” href=”https://example.com/page/” />
このタグをHTMLのhead要素内に記述することで、Googleなどの検索エンジンに対して「このページの正規URLはhrefで指定したURLです」と伝えることができます。
canonicalタグの役割
canonicalタグは、以下の役割を果たします。
役割1:重複コンテンツの解消として、複数のURLで同じコンテンツにアクセスできる場合、検索エンジンはどのURLをインデックスすべきか判断に迷います。canonicalタグで正規URLを指定することで、この問題を解決できます。
役割2:SEO評価の集中として、複数のURLに分散していた評価(被リンク、Googleの評価など)を、正規URLに集約できます。
役割3:クロールの効率化として、検索エンジンが重複URLを不要にクロールすることを防ぎ、クロールバジェットを効率的に使えます。
役割4:インデックスの最適化として、正規URLのみがインデックスされ、検索結果に表示されるべきページが明確になります。
canonicalタグが必要なケース
canonicalタグが必要となる代表的なケースを紹介します。
ケース1:WWWありとなしとして、https://www.example.com/page/ と https://example.com/page/ の両方でアクセスできる場合です。
ケース2:HTTPとHTTPSとして、http://example.com/page/ と https://example.com/page/ の両方でアクセスできる場合です。
ケース3:末尾スラッシュの有無として、https://example.com/page と https://example.com/page/ の両方でアクセスできる場合です。
ケース4:パラメータ付きURLとして、https://example.com/page/ と https://example.com/page/?ref=twitter の両方でアクセスできる場合です。
ケース5:大文字・小文字の違いとして、https://example.com/Page/ と https://example.com/page/ の両方でアクセスできる場合です。
ケース6:index.htmlの有無として、https://example.com/ と https://example.com/index.html の両方でアクセスできる場合です。
ケース7:モバイル版とPC版として、https://example.com/page/ と https://m.example.com/page/ のように、別URLでモバイル版を提供している場合です。
ケース8:類似コンテンツとして、ECサイトで色違いの商品ページなど、内容がほぼ同じページが複数存在する場合です。
canonicalタグと他の正規化方法の違い
URLの正規化には、canonicalタグ以外にも方法があります。
301リダイレクトとして、旧URLにアクセスすると新URLに自動転送される方法です。ユーザーもクローラーも新URLに移動します。URLを完全に統一したい場合に使用します。
canonicalタグとして、旧URLにアクセスしてもそのまま表示されるが、検索エンジンには正規URLを伝える方法です。ユーザーは元のURLでアクセスできますが、インデックスは正規URLのみになります。
使い分けの目安として、URLを完全に統一したい場合は301リダイレクト、両方のURLでアクセス可能にしたいが、SEO評価は統一したい場合はcanonicalタグを使用します。
canonicalタグの正しい書き方
canonicalタグの正しい書き方を解説します。
基本的な記述方法
canonicalタグは、HTMLのhead要素内に記述します。
記述例:
<head>
<title>ページタイトル</title>
<link rel=”canonical” href=”https://example.com/page/” />
</head>
絶対URLを使用する
canonicalタグのhref属性には、必ず絶対URL(完全なURL)を指定します。
正しい例:
<link rel=”canonical” href=”https://example.com/page/” />
間違った例:
<link rel=”canonical” href=”/page/” />(相対URL)
<link rel=”canonical” href=”page/” />(相対URL)
相対URLでも動作する場合がありますが、Googleは絶対URLの使用を推奨しています。
自己参照canonicalの設定
自己参照canonical(セルフリファレンシングcanonical)とは、ページ自身のURLをcanonicalとして指定することです。
例:
https://example.com/page/ のページに、
<link rel=”canonical” href=”https://example.com/page/” />
を設定します。
なぜ自己参照が重要かとして、パラメータが付与された場合の対策(?ref=twitterなど)、意図しない重複URLの発生を防ぐ、正規URLを明確にするなどがあります。
すべてのページに自己参照canonicalを設定することを推奨します。
HTTPヘッダーでの指定
HTML以外に、HTTPヘッダーでcanonicalを指定することも可能です。
HTTPヘッダーでの指定例:
Link: <https://example.com/page/>; rel=”canonical”
使用するケースとして、PDFファイルなどHTML以外のコンテンツ、JavaScriptで動的に生成されるページ、HTMLのheadを編集できない場合などがあります。
複数のcanonicalタグは避ける
1つのページに複数のcanonicalタグを設置しないでください。
間違った例:
<link rel=”canonical” href=”https://example.com/page-a/” />
<link rel=”canonical” href=”https://example.com/page-b/” />
複数のcanonicalタグがあると、Googleはどちらを正規とすべきか判断できず、両方を無視する可能性があります。
canonicalタグの設定パターン
具体的な設定パターンを解説します。
パターン1:パラメータ付きURLの正規化
トラッキングパラメータや並び替えパラメータなど、パラメータが付与されたURLを正規化します。
状況:
・https://example.com/page/(正規URL)
・https://example.com/page/?ref=twitter
・https://example.com/page/?utm_source=google
設定:
すべてのページに以下を設定:
<link rel=”canonical” href=”https://example.com/page/” />
パターン2:ECサイトの商品バリエーション
ECサイトで、色やサイズ違いの商品ページが複数存在する場合です。
状況:
・/products/tshirt-red/
・/products/tshirt-blue/
・/products/tshirt-green/
対応方法の選択肢:
方法1:メインカラーを正規URLにとして、すべてのカラーページで、最も人気のカラー(または基本カラー)を正規URLに指定します。
方法2:各ページを独立させるとして、各カラーで検索される可能性があり、コンテンツに違いがある場合は、それぞれ自己参照canonicalを設定して独立したページとして扱います。
判断基準として、各ページのコンテンツに十分な違いがあるか、各バリエーションで検索される需要があるか、ページ数が多すぎてインデックスに悪影響がないかなどを考慮します。
パターン3:ページネーション
一覧ページのページネーション(ページ送り)での設定です。
状況:
・/blog/(1ページ目)
・/blog/page/2/
・/blog/page/3/
対応方法:
各ページにそれぞれ自己参照canonicalを設定します。
・/blog/ には <link rel=”canonical” href=”https://example.com/blog/” />
・/blog/page/2/ には <link rel=”canonical” href=”https://example.com/blog/page/2/” />
注意:すべてのページを1ページ目に正規化するのは間違いです。各ページには異なるコンテンツがあるため、それぞれ独立したページとして扱います。
パターン4:印刷用ページ
印刷用に最適化された別ページがある場合です。
状況:
・/article/seo-guide/(通常ページ)
・/article/seo-guide/print/(印刷用ページ)
設定:
印刷用ページに以下を設定:
<link rel=”canonical” href=”https://example.com/article/seo-guide/” />
パターン5:モバイル用URL
モバイル版を別URLで提供している場合です(現在はレスポンシブデザインが推奨)。
状況:
・https://example.com/page/(PC版)
・https://m.example.com/page/(モバイル版)
設定:
モバイル版に以下を設定:
<link rel=”canonical” href=”https://example.com/page/” />
さらに、PC版にはalternateタグを設定:
<link rel=”alternate” media=”only screen and (max-width: 640px)” href=”https://m.example.com/page/” />
パターン6:多言語サイト
多言語サイトでのcanonical設定です。
状況:
・/ja/page/(日本語版)
・/en/page/(英語版)
設定:
各言語版に自己参照canonicalを設定します。
日本語版:
<link rel=”canonical” href=”https://example.com/ja/page/” />
英語版:
<link rel=”canonical” href=”https://example.com/en/page/” />
注意:異なる言語版同士をcanonicalで正規化しないでください。代わりにhreflang属性を使用して、言語版の関係を示します。
パターン7:シンジケーションコンテンツ
自社コンテンツを他サイトに配信(シンジケーション)している場合です。
設定:
配信先サイトに、元のコンテンツのURLをcanonicalとして設定してもらいます。
配信先サイト:
<link rel=”canonical” href=”https://original-site.com/article/” />
これにより、オリジナルコンテンツに評価が集まります。
canonicalタグの確認方法
設定したcanonicalタグが正しく機能しているか確認する方法を解説します。
ブラウザでの確認
ブラウザでページのソースコードを表示して確認します。
確認方法:
- 対象のページを開く
- 右クリック→「ページのソースを表示」
- Ctrl+F(Mac: Cmd+F)で「canonical」を検索
- canonicalタグの内容を確認
開発者ツールでの確認
ブラウザの開発者ツールで確認します。
確認方法:
- 対象のページを開く
- F12キーで開発者ツールを開く
- 「Elements」タブでhead要素を展開
- canonicalタグを確認
Googleサーチコンソールでの確認
Googleサーチコンソールで、Googleがどのページを正規と認識しているか確認できます。
確認方法:
- サーチコンソールにログイン
- 「URL検査」に対象のURLを入力
- 「ページのインデックス登録」セクションを確認
- 「Google が選択した正規 URL」を確認
確認すべきポイントとして、「ユーザーが指定した正規URL」と「Googleが選択した正規URL」が一致しているか、意図しないURLが正規として選択されていないかなどがあります。
SEOツールでの確認
各種SEOツールでもcanonicalタグを確認できます。
Screaming Frog SEO Spiderとして、サイト全体をクロールして、各ページのcanonicalタグを一覧で確認できます。
Ahrefs / SEMrushとして、Site Audit機能でcanonical関連の問題を検出できます。
Chrome拡張機能として、SEO Meta in 1 Click、MozBarなどの拡張機能でcanonicalを確認できます。
WordPressでのcanonical設定
WordPressでのcanonical設定方法を解説します。
WordPressのデフォルト動作
WordPress 2.9以降では、投稿や固定ページに自動的にcanonicalタグが出力されます。
デフォルトの動作として、投稿・固定ページに自己参照canonicalが自動設定、カテゴリ・タグのアーカイブページにも設定されます。
ただし、細かいカスタマイズや問題の解決には、SEOプラグインの使用を推奨します。
Yoast SEOでの設定
Yoast SEOを使用したcanonical設定方法です。
自動設定として、Yoast SEOをインストールすると、すべてのページに自動的に適切なcanonicalタグが設定されます。
個別ページの設定:
- 投稿・固定ページの編集画面を開く
- Yoast SEOメタボックスの「詳細設定」タブを開く
- 「正規URL」フィールドに、任意のcanonical URLを入力
設定例として、特定のページを別のページに正規化したい場合や、外部URLを正規URLに指定したい場合などに使用します。
Rank Mathでの設定
Rank Mathを使用したcanonical設定方法です。
自動設定として、Rank Mathでも自動的にcanonicalタグが設定されます。
個別ページの設定:
- 投稿・固定ページの編集画面を開く
- Rank Mathメタボックスの「詳細設定」タブを開く
- 「Canonical URL」フィールドに、任意のcanonical URLを入力
functions.phpでのカスタマイズ
プラグインを使用せずに、functions.phpでcanonicalをカスタマイズする方法です。
WordPressデフォルトのcanonicalを削除:
remove_action(‘wp_head’, ‘rel_canonical’);
カスタムcanonicalを追加:
function custom_canonical() {
if (is_singular()) {
echo ‘<link rel=”canonical” href=”‘ . get_permalink() . ‘” />’;
}
}
add_action(‘wp_head’, ‘custom_canonical’);
カテゴリ・タグページのcanonical
カテゴリページやタグページのcanonical設定についてです。
注意点として、アーカイブページ(カテゴリ、タグ、日付別など)にも適切なcanonicalが設定されているか確認します。ページネーションがある場合、各ページに自己参照canonicalが設定されるべきです。
canonicalタグのよくある間違い
canonicalタグ設定でよくある間違いと対処法を解説します。
間違い1:すべてのページをトップページに正規化
間違った設定:
すべてのページに以下を設定:
<link rel=”canonical” href=”https://example.com/” />
問題点として、トップページ以外のページがインデックスされなくなる、サイト全体のSEOに深刻な悪影響などがあります。
正しい設定:
各ページに自己参照canonicalを設定します。
間違い2:相対URLの使用
間違った設定:
<link rel=”canonical” href=”/page/” />
問題点として、相対URLはGoogleが推奨しておらず、正しく解釈されない可能性があります。
正しい設定:
<link rel=”canonical” href=”https://example.com/page/” />
間違い3:HTTPとHTTPSの不一致
間違った設定:
HTTPSのページに以下を設定:
<link rel=”canonical” href=”http://example.com/page/” />
問題点として、HTTPを正規URLに指定すると、HTTPSのセキュリティメリットが失われます。
正しい設定:
HTTPSサイトでは、必ずHTTPSのURLをcanonicalに指定します。
間違い4:ページネーションの誤った正規化
間違った設定:
/blog/page/2/、/blog/page/3/ などすべてのページに:
<link rel=”canonical” href=”https://example.com/blog/” />
問題点として、2ページ目以降のコンテンツがインデックスされなくなります。
正しい設定:
各ページに自己参照canonicalを設定します。
間違い5:異なるコンテンツ間での正規化
間違った設定:
全く異なるコンテンツのページAに、ページBを正規URLとして設定。
問題点として、Googleはコンテンツが類似していない場合、canonicalを無視する可能性があります。
正しい対応:
canonicalは、同一または非常に類似したコンテンツ間でのみ使用します。
間違い6:リダイレクトとの混同
間違った理解:
canonicalを設定すれば、301リダイレクトは不要。
正しい理解:
canonicalはインデックスの正規化のみ。ユーザーは元のURLでアクセス可能です。URLを完全に統一したい場合は301リダイレクトを使用します。
間違い7:複数のcanonicalタグ
間違った設定:
1つのページに複数のcanonicalタグを設置。
問題点として、Googleはどちらを正規とすべきか判断できず、両方を無視する可能性があります。
正しい設定:
1ページにつきcanonicalタグは1つだけ設置します。
間違い8:noindexとcanonicalの併用
間違った設定:
同じページにnoindexとcanonical(別ページへの正規化)を両方設定。
問題点として、矛盾するシグナルを送ることになり、Googleの挙動が予測しにくくなります。
正しい対応:
インデックスさせたくないページにはnoindexを使用、別ページに評価を集約したい場合はcanonicalを使用。両方は設定しません。
Googleがcanonicalを無視するケース
Googleは、指定されたcanonicalを必ずしも採用するわけではありません。
canonicalがヒントである理由
Googleは、canonicalタグを「指示(directive)」ではなく「ヒント(hint)」として扱います。
理由として、サイト運営者の設定ミスを防ぐため、より適切な正規URLを選択するため、ユーザー体験を損なわないためなどがあります。
無視されるケース1:コンテンツが大きく異なる
canonicalで指定したページと、元のページのコンテンツが大きく異なる場合、Googleはcanonicalを無視する可能性があります。
対策:canonicalは、同一または非常に類似したコンテンツ間でのみ使用します。
無視されるケース2:canonicalチェーン
ページA → ページB → ページC のようにcanonicalが連鎖している場合です。
対策:canonicalは最終的な正規URLを直接指定します。
無視されるケース3:他のシグナルとの矛盾
canonical以外のシグナル(内部リンク、サイトマップなど)が別のURLを示している場合です。
対策:canonical、内部リンク、XMLサイトマップなどのシグナルを統一します。
無視されるケース4:HTTPヘッダーとHTMLの不一致
HTTPヘッダーとHTML内のcanonicalが異なるURLを指している場合です。
対策:HTTPヘッダーとHTMLのcanonicalを一致させます。
Googleが選択した正規URLの確認
Googleが実際に選択した正規URLは、サーチコンソールの「URL検査」で確認できます。
確認方法:
- サーチコンソールで「URL検査」を使用
- 対象のURLを入力
- 「Google が選択した正規 URL」を確認
canonicalタグとSEOの関係
canonicalタグがSEOに与える影響について詳しく解説します。
評価の集約効果
canonicalタグの最大のSEOメリットは、分散した評価を1つのURLに集約できることです。
効果として、被リンクの評価が正規URLに集約、Googleの評価(PageRankなど)が集中、検索順位の向上につながる可能性などがあります。
クロールバジェットの最適化
canonicalタグは、クロールバジェットの最適化にも貢献します。
効果として、重複URLのクロールを減らせる、重要なページのクロール頻度が上がる可能性、大規模サイトでは特に効果的などがあります。
インデックスの最適化
正規URLのみがインデックスされることで、検索結果の品質が向上します。
効果として、意図したURLが検索結果に表示される、重複ページの表示を防げる、ユーザー体験の向上などがあります。
ペナルティの回避
適切なcanonical設定は、重複コンテンツによるペナルティリスクを軽減します。
注意:重複コンテンツ自体は通常ペナルティの対象ではありませんが、サイト全体の評価に悪影響を与える可能性があります。
業種別のcanonical設定例
業種ごとのcanonical設定例を紹介します。
ECサイト
ECサイトでは、以下のケースでcanonicalが重要です。
商品バリエーションとして、色・サイズ違いの商品ページをメインページに正規化するか、独立させるか検討します。
絞り込み・ソート機能として、/products/?sort=price、/products/?color=red などのパラメータ付きURLを正規URLに統一します。
商品が複数カテゴリに属する場合として、/mens/shoes/sneakers/product/ と /brand/nike/product/ が同じ商品を指す場合、どちらかを正規URLに設定します。
メディア・ブログ
メディアサイトやブログでのcanonical設定です。
シンジケーションとして、記事を外部サイトに配信する場合、配信先に元記事へのcanonicalを設定してもらいます。
AMP対応として、AMPページと通常ページの関係を適切に設定します。
プレビュー・印刷用ページとして、別URLで提供する場合は、メインページを正規URLに設定します。
BtoB企業サイト
BtoB企業サイトでのcanonical設定です。
サービスページのバリエーションとして、業種別・規模別にサービスページを分けている場合、類似コンテンツの正規化を検討します。
ホワイトペーパー・資料として、同じ資料へのアクセスURLが複数ある場合、正規化します。
不動産サイト
不動産サイトでのcanonical設定です。
検索結果ページとして、条件絞り込みのパラメータ付きURLを、適切に正規化またはnoindex設定します。
同一物件の複数URLとして、エリア別・路線別など、同じ物件が複数のURLで表示される場合、正規化します。
canonicalタグに関するよくある質問(FAQ)
canonicalタグに関するよくある質問にお答えします。
Q1. すべてのページにcanonicalタグを設定すべきですか?
A. はい、すべてのページに自己参照canonicalを設定することを推奨します。
これにより、パラメータ付きURLなど、意図しない重複の発生を防げます。
Q2. canonicalタグを設定すれば301リダイレクトは不要ですか?
A. いいえ、目的が異なります。
canonicalはインデックスの正規化のみ。ユーザーは元のURLでアクセスできます。
301リダイレクトはユーザーも検索エンジンも新URLに転送します。
URLを完全に統一したい場合は301リダイレクトを使用してください。
Q3. canonicalタグを設定したら、すぐに反映されますか?
A. いいえ、Googleがクロールして認識するまで時間がかかります。
通常は数日から数週間で反映されますが、サイトによって異なります。サーチコンソールの「URL検査」で確認できます。
Q4. 外部サイトのURLをcanonicalに指定できますか?
A. はい、可能です。
シンジケーションコンテンツなど、元のコンテンツが外部サイトにある場合に使用します。ただし、Googleがこれを採用するかはケースバイケースです。
Q5. canonicalタグとnoindexの違いは?
A. 目的が異なります。
canonicalは「正規URLはこちら」と伝えます。正規URLに評価が集約されます。
noindexは「このページをインデックスしないで」と伝えます。評価の集約はありません。
Q6. hreflangとcanonicalは両方必要ですか?
A. はい、多言語サイトでは両方設定することを推奨します。
canonicalは各言語版に自己参照canonicalを設定。
hreflangは各言語版の関係を示す。
canonicalで別の言語版を正規URLに指定しないでください。
Q7. JavaScriptで動的に生成されるcanonicalは認識されますか?
A. Googleは通常、JavaScriptで生成されたcanonicalも認識しますが、HTMLに直接記述する方が確実です。
可能であれば、サーバーサイドでcanonicalを出力することを推奨します。
まとめ:canonicalタグでSEO評価を集中させよう
本記事では、canonicalタグの正しい使い方について解説しました。最後に、重要なポイントをまとめます。
canonicalタグの役割
重複コンテンツの解消、SEO評価の集中、クロールバジェットの効率化、インデックスの最適化などに役立ちます。
正しい設定のポイント
絶対URL(https://から始まる完全なURL)を使用、すべてのページに自己参照canonicalを設定、1ページにつきcanonicalタグは1つのみ、canonical・内部リンク・サイトマップを統一などがポイントです。
よくある間違いを避ける
すべてのページをトップページに正規化しない、相対URLを使用しない、異なるコンテンツ間で正規化しない、noindexとcanonicalを併用しないなどに注意しましょう。
確認と監視
サーチコンソールでGoogleが選択した正規URLを確認、SEOツールでcanonical関連の問題を検出、定期的に設定を確認することが重要です。
canonicalタグは、テクニカルSEOの基本でありながら、正しく理解されていないことも多い要素です。本記事で紹介した方法を参考に、適切なcanonical設定を行い、SEO評価を最大化してください。
関連記事として、重複コンテンツの対策、301リダイレクトの設定方法、URL最適化のベストプラクティスも合わせてご覧ください。
canonicalタグの高度な活用法
canonicalタグのより高度な活用法を紹介します。
クロスドメインcanonical
異なるドメイン間でcanonicalを設定する方法です。
使用ケースとして、同じコンテンツを複数のドメインで公開している場合、記事のシンジケーション(配信)、サイト統合時の移行期間などがあります。
設定例:
site-b.com のページに以下を設定:
<link rel=”canonical” href=”https://site-a.com/original-article/” />
注意点として、Googleがクロスドメインcanonicalを採用するかは保証されない、コンテンツの類似性が高いことが必要、両サイトがGoogleに信頼されていることが重要などがあります。
動的パラメータの管理戦略
ECサイトや大規模サイトでの動的パラメータの管理戦略です。
パラメータの種類と対応:
トラッキングパラメータ(utm_source、ref、clickidなど)として、コンテンツに影響しないため、canonicalでパラメータなしURLに正規化します。
ソートパラメータ(sort=price、order=descなど)として、表示順序が変わるだけなので、canonicalでデフォルトの並び順URLに正規化します。
フィルターパラメータ(color=red、size=Mなど)として、重要なフィルター条件はインデックスさせ、細かい組み合わせはcanonicalまたはnoindexで対応します。
ページネーションパラメータ(page=2など)として、各ページに自己参照canonicalを設定し、独立したページとして扱います。
JavaScriptフレームワークでのcanonical
React、Vue.js、Next.jsなどのJavaScriptフレームワークでのcanonical設定です。
課題として、クライアントサイドレンダリングではcanonicalがJavaScript実行後に生成される、Googleが認識するまでに時間がかかる可能性などがあります。
推奨される対応として、サーバーサイドレンダリング(SSR)を使用、プリレンダリングでcanonicalを出力、HTTPヘッダーでcanonicalを指定などがあります。
Next.jsでの設定例:
next/head を使用してcanonicalを設定します。
AMPページでのcanonical
AMP(Accelerated Mobile Pages)でのcanonical設定です。
構造:
・通常ページ:/article/seo-guide/
・AMPページ:/article/seo-guide/amp/
設定:
通常ページに以下を設定:
<link rel=”amphtml” href=”https://example.com/article/seo-guide/amp/” />
AMPページに以下を設定:
<link rel=”canonical” href=”https://example.com/article/seo-guide/” />
HTTPヘッダーとHTMLの併用
特殊なケースでは、HTTPヘッダーとHTML両方でcanonicalを指定することがあります。
注意点として、両方で指定する場合は、必ず同じURLを指定する、異なるURLを指定すると、Googleの挙動が予測しにくくなるなどがあります。
canonicalタグのトラブルシューティング
canonical関連の問題と解決方法を解説します。
問題1:意図しないURLが正規として選択される
症状:サーチコンソールで確認すると、指定したcanonicalとは異なるURLが正規として選択されている。
原因として、canonical以外のシグナル(内部リンク、サイトマップなど)が別のURLを示している、コンテンツの類似性が低いとGoogleが判断した、canonicalチェーンが発生しているなどがあります。
解決方法として、内部リンク、サイトマップ、canonicalを統一する、コンテンツの類似性を確認、直接最終URLをcanonicalに指定などがあります。
問題2:canonicalタグが出力されない
症状:ページのソースを確認しても、canonicalタグが見当たらない。
原因として、CMSやプラグインの設定ミス、テーマのカスタマイズでcanonicalが削除されている、JavaScriptでのみ出力されているなどがあります。
解決方法として、CMSやプラグインの設定を確認、テーマファイル(header.php等)を確認、開発者ツールでJavaScript実行後のDOMを確認などがあります。
問題3:重複するcanonicalタグ
症状:ページに複数のcanonicalタグが出力されている。
原因として、複数のプラグインがcanonicalを出力している、CMSとプラグインの両方が出力している、テーマとプラグインの競合などがあります。
解決方法として、使用していないプラグインを無効化、プラグインの設定でcanonical出力を調整、テーマのcanonical出力を無効化などがあります。
問題4:HTTPとHTTPSの不一致
症状:HTTPSサイトなのに、canonicalがHTTPを指している。
原因として、CMSの設定でサイトURLがHTTPになっている、古い設定がそのまま残っている、プラグインの設定ミスなどがあります。
解決方法として、CMSの設定(WordPress→一般設定)でURLをHTTPSに変更、プラグインの設定を確認、データベース内のURLを一括置換などがあります。
問題5:インデックスが減少した
症状:canonical設定後、インデックス数が大幅に減少した。
原因として、すべてのページを誤って1つのURLに正規化した、存在しないURLをcanonicalに指定した、canonical設定にエラーがあるなどがあります。
解決方法として、canonical設定を見直し、問題があれば修正、サーチコンソールで「URL検査」を使用して確認、修正後、インデックス登録をリクエストなどがあります。
canonicalタグのチェックリスト
canonical設定のチェックリストをまとめます。
基本設定チェック
すべてのページにcanonicalタグが設定されているか確認してください。絶対URL(https://から始まる)を使用しているか確認してください。1ページにつきcanonicalタグは1つだけか確認してください。HTTPSサイトではHTTPSのURLを指定しているか確認してください。自己参照canonicalが正しく設定されているか確認してください。
正規化の整合性チェック
canonicalと内部リンクの指すURLが一致しているか確認してください。canonicalとXMLサイトマップのURLが一致しているか確認してください。canonicalチェーン(A→B→C)が発生していないか確認してください。HTTPヘッダーとHTMLのcanonicalが一致しているか確認してください。
特殊ケースのチェック
パラメータ付きURLが適切に正規化されているか確認してください。ページネーションページが個別に自己参照canonicalを持っているか確認してください。多言語サイトで別言語を正規化していないか確認してください。AMPページと通常ページの関係が正しく設定されているか確認してください。
監視・確認チェック
サーチコンソールで「Google が選択した正規URL」を定期的に確認しているか確認してください。SEOツールでcanonical関連のエラーを監視しているか確認してください。新規ページ追加時にcanonicalが正しく設定されるか確認しているか確認してください。
canonicalタグとその他のSEO施策の連携
canonicalタグを他のSEO施策と連携させる方法を解説します。
サイト構造との連携
サイト構造とcanonical設定を連携させます。
連携のポイントとして、サイト構造(階層)を反映したcanonical URL、カテゴリ変更時のcanonical更新、パンくずリストとcanonicalの整合性などがあります。
内部リンクとの連携
内部リンクとcanonicalを連携させます。
連携のポイントとして、内部リンクは常に正規URLを使用、canonical先のページへ内部リンクを集中、リンクとcanonicalで異なるURLを指さないなどがあります。
XMLサイトマップとの連携
XMLサイトマップとcanonicalを連携させます。
連携のポイントとして、サイトマップには正規URLのみを掲載、canonical先とサイトマップのURLを一致させる、重複URLはサイトマップに含めないなどがあります。
robots.txtとの連携
robots.txtとcanonicalを連携させます。
連携のポイントとして、canonicalで正規化するページをrobots.txtでブロックしない、重複URLのクロールを必要に応じてrobots.txtで制限などがあります。
構造化データとの連携
構造化データとcanonicalを連携させます。
連携のポイントとして、構造化データ内のURLは正規URLを使用、@idや「url」プロパティにcanonical URLを指定などがあります。
canonicalタグの将来展望
canonicalタグの今後の展望について解説します。
Googleのアルゴリズム進化
Googleの正規化アルゴリズムは進化し続けています。
傾向として、canonical以外のシグナルもより考慮される、サイト運営者の意図をより正確に理解、誤った設定の影響を軽減する方向などがあります。
AI検索時代のcanonical
AI検索(SGE)の登場による影響です。
変化として、AIが情報を抽出する際も、正規URLが情報源として扱われる、重複コンテンツの問題は引き続き重要、正しいcanonical設定の重要性は継続などがあります。
今後も重要な理由
canonicalタグは今後も重要なSEO要素であり続けます。
理由として、Webの構造上、重複URLの問題は避けられない、正規化はWeb標準の一部、検索エンジンにとっても重要なシグナルなどがあります。
canonicalタグに関する追加FAQ
canonicalタグに関する追加の質問にお答えします。
Q. canonicalタグの設定は被リンクの評価を100%移転しますか?
A. ほぼ100%移転すると考えられていますが、Googleは具体的な数値を公開していません。
301リダイレクトと同様に、評価の大部分が正規URLに移転されると考えて良いでしょう。
Q. カテゴリページとタグページが重複する場合、canonicalで対処すべき?
A. コンテンツが本当に重複しているかを確認し、対処方法を選択します。
選択肢として、一方をcanonicalで正規化、一方をnoindex設定、両方を独立したページとして維持(コンテンツに違いがある場合)などがあります。
Q. 古いURLから新しいURLへ、canonicalと301リダイレクトどちらを使うべき?
A. URLの永続的な変更には301リダイレクトを推奨します。
canonicalは両方のURLでアクセス可能にしたい場合に使用します。URL変更の場合、基本的には301リダイレクトが適切です。
Q. CDNを使用している場合のcanonical設定は?
A. CDNのURLではなく、元のサイトのURLをcanonicalに設定します。
CDN経由でアクセスしても、正規URLとして元のドメインが認識されるようにします。
Q. canonicalタグはどのくらいの期間で反映されますか?
A. Googleがページをクロールして認識するまでの時間がかかります。
通常は数日から数週間ですが、サイトの規模やクロール頻度によって異なります。急ぎの場合は、サーチコンソールでインデックス登録をリクエストできます。
まとめ:canonicalタグでSEO評価を集中させよう
本記事では、canonicalタグの正しい使い方について徹底解説しました。
canonicalタグの役割
重複コンテンツの解消、SEO評価の集中、クロールバジェットの効率化、インデックスの最適化などに役立ちます。
正しい設定のポイント
絶対URLを使用する、すべてのページに自己参照canonicalを設定、1ページにつきcanonicalタグは1つのみ、canonical・内部リンク・サイトマップを統一するなどがポイントです。
よくある間違いを避ける
すべてのページをトップページに正規化しない、相対URLを使用しない、異なるコンテンツ間で正規化しない、noindexとcanonicalを併用しないなどに注意しましょう。
canonicalタグは、テクニカルSEOの基本要素です。本記事で紹介した方法を参考に、適切なcanonical設定を行い、SEO評価を最大化してください。
canonical設定の実践例
実際のcanonical設定事例を紹介します。
事例1:ECサイトの商品バリエーション正規化
状況:アパレルECサイトで、色違いの商品ページが多数存在し、検索結果に複数の色が表示されていた
施策として、各商品の「メインカラー」を決定、他のカラーページからメインカラーページへcanonicalを設定、サーチコンソールで正規化状況を監視しました。
結果として、メインカラーページへ評価が集約、商品名での検索順位が向上、インデックスの効率化でクロールバジェットが改善しました。
事例2:パラメータ付きURLの正規化
状況:BtoBサイトで、UTMパラメータや参照元パラメータが付与されたURLが大量にインデックスされていた
施策として、すべてのページに自己参照canonicalを実装、パラメータなしURLを正規URLに設定、サイトマップから重複URLを除外しました。
結果として、重複インデックスが解消、主要ページの検索順位が安定、サーチコンソールの「重複」警告が解消しました。
事例3:サイト統合時のクロスドメインcanonical
状況:2つのサイトを統合する際、移行期間中に両方のサイトでコンテンツにアクセス可能な状態だった
施策として、旧サイトのページに新サイトへのcanonicalを設定、段階的に301リダイレクトに移行、サーチコンソールで両サイトの状況を監視しました。
結果として、移行期間中も検索順位を維持、最終的な301リダイレクト後もスムーズに移行、被リンクの評価を新サイトに集約できました。
事例4:多言語サイトのcanonical修正
状況:多言語サイトで、すべての言語版を英語版に正規化する誤った設定がされていた
問題として、日本語版、韓国語版などのページがインデックスされない、各言語での検索流入が大幅に減少していました。
施策として、各言語版に自己参照canonicalを設定、hreflang属性を正しく実装、サーチコンソールでインデックス登録をリクエストしました。
結果として、各言語版がインデックスに復帰、各言語での検索流入が回復、多言語SEOが正常に機能するようになりました。
CMS別のcanonical設定詳細
主要なCMSでのcanonical設定の詳細を解説します。
WordPress詳細設定
WordPressでのcanonical設定の詳細です。
Yoast SEOの詳細設定として、「SEO」→「検索での見え方」→「一般」で、各コンテンツタイプのcanonical設定を確認できます。カテゴリ、タグ、日付アーカイブなど、アーカイブページのcanonical設定も管理できます。
Rank Mathの詳細設定として、「Rank Math」→「一般設定」→「リダイレクト」で、URL変更時の自動リダイレクト設定が可能です。「タイトル&メタ」で各投稿タイプのcanonical設定を管理できます。
マルチサイト環境での注意として、WordPressマルチサイトでは、各サイトのcanonicalが独立して機能することを確認します。サイト間でのクロスcanonicalが意図せず設定されていないか確認します。
Shopifyでのcanonical設定
Shopifyでのcanonical設定についてです。
デフォルトの動作として、Shopifyは自動的に適切なcanonicalタグを出力します。コレクション内の商品ページは、商品の正規URLにcanonicalが設定されます。
カスタマイズが必要なケースとして、特定のコレクションを正規として扱いたい場合、外部サイトへのcanonical設定、カスタムランディングページの正規化などがあります。
Liquidでの実装として、theme.liquidやproduct.liquidでcanonicalをカスタマイズできます。
静的サイトでのcanonical設定
HTMLを直接記述するサイトやSSG(静的サイトジェネレーター)での設定です。
HTMLでの直接記述として、各HTMLファイルのhead要素内にcanonicalタグを手動で追加します。
SSGでの設定として、Next.js、Gatsby、Hugoなどでは、テンプレートやコンポーネントでcanonicalを動的に生成します。ビルド時に各ページの正規URLが適切に設定されるようにします。
canonicalタグの監視と自動化
canonical設定の監視と自動化について解説します。
定期的な監視の重要性
canonical設定は、サイトの変更や更新により意図せず変わることがあります。
監視すべき項目として、新規ページのcanonical設定、CMS・プラグインのアップデート後の変化、サイト構造変更時の影響、サーチコンソールでの正規URL選択状況などがあります。
監視ツールの活用
Screaming Frog SEO Spiderとして、定期的なクロールでcanonical設定を一覧化、前回クロールとの差分を検出、エクスポート機能でスプレッドシートで管理できます。
Sitebulbとして、canonical関連の問題を自動検出、視覚的なレポートで問題を把握、改善提案を提供します。
ContentKing / Lumar(旧Deepcrawl)として、リアルタイム監視でcanonicalの変更を検出、アラート機能で問題発生時に通知、大規模サイトの継続的な監視に適しています。
自動化のアプローチ
CMSレベルでの自動化として、新規ページ作成時に自動的にcanonicalを設定、テンプレートに自己参照canonicalを組み込み、URL変更時の自動更新などがあります。
CI/CDパイプラインでの検証として、デプロイ前にcanonical設定を自動チェック、問題があればデプロイを停止、テスト環境での検証自動化などがあります。
canonicalタグのSEO診断
canonical設定のSEO診断方法を解説します。
診断項目1:基本設定の確認
チェック内容として、canonicalタグが存在するか、絶対URLが使用されているか、HTTPSが使用されているか、自己参照canonicalが設定されているかなどがあります。
診断項目2:一貫性の確認
チェック内容として、canonical・内部リンク・サイトマップが一致しているか、canonicalチェーンがないか、重複するcanonicalタグがないかなどがあります。
診断項目3:特殊ケースの確認
チェック内容として、パラメータ付きURLの正規化、ページネーションの設定、多言語サイトの設定、AMPとの関係などがあります。
診断項目4:Googleの認識確認
チェック内容として、サーチコンソールでGoogleが選択した正規URLを確認、意図した正規化が行われているか、重複に関する警告がないかなどがあります。
診断結果のレポート化
レポートに含める内容として、canonical設定の概要、発見された問題点、優先度別の改善提案、改善後の期待効果などがあります。
本記事で紹介したcanonicalタグの設定方法とベストプラクティスを実践し、重複コンテンツの問題を解消してSEO評価を最大化してください。
関連記事として、重複コンテンツの対策、301リダイレクトの設定方法、URL最適化のベストプラクティスも合わせてご覧ください。