同じ内容のページが複数のURLで存在してしまう、ということは珍しくありません。ECサイトの絞り込みパラメータ、wwwありなし、httpとhttpsの混在など、意図せず重複コンテンツが発生するケースはよくあります。「canonical」というタグを見聞きしたことはあっても、何をするものか分からず設定を後回しにしている事業者さまも多いのではないでしょうか。この記事では、canonicalタグの役割、書き方、WordPressでの設定方法、そしてやってしまいがちな失敗までを解説します。

canonical(正規URL)タグとは

canonicalタグ(rel="canonical")は、内容が同じ・似ているページが複数存在する場合に、「どのURLを正規のページとして評価してほしいか」を検索エンジンに伝えるHTMLタグです。日本語では「正規URLタグ」とも呼ばれます。

例えば、次のようなURLがすべて同じ商品ページを表示しているとします。

  • https://example.com/item/123
  • https://example.com/item/123?color=red
  • https://example.com/item/123?utm_source=twitter

これらはユーザーには同じページに見えても、検索エンジンには別々のURLとして認識されます。canonicalタグで正規URLを1つに指定しておくと、検索エンジンは評価を分散させず、指定したURLにまとめて評価を集約できます。

なぜcanonical設定が必要なのか(重複コンテンツの原因)

重複コンテンツが起きる主な原因は次のとおりです。

パラメータ付きURL:絞り込み検索や並び替え、広告の計測用パラメータ(utm_source等)が付くと、内容は同じでもURLが変わります。ECサイトやブログの一覧ページで起こりやすい原因です。

wwwありなしの混在:https://example.com/ と https://www.example.com/ の両方でアクセスできる設定になっていると、検索エンジンからは別サイトとして扱われる可能性があります。統一の考え方はwwwありなし、どちらを使うべきかで解説しています。

httpとhttpsの混在:SSL化した後も旧URL(http)が残っていると、同じ内容が2つのプロトコルで存在することになります。

サイトリニューアル時のURL変更:リニューアルでURL構造を変えた場合、正しくリダイレクトされていないと旧URLと新URLの両方が残り、重複と判定されることがあります。リニューアル時の対応はホームページリニューアル時の注意点にまとめています。

canonicalタグは、こうした「意図せず複数存在してしまうURL」の評価を1つにまとめるための仕組みです。

canonicalタグの書き方と設置場所

canonicalタグはHTMLの<head>内に記述します。

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

hrefには、正規としたいURL(https://から始まる絶対URL、末尾スラッシュの有無も統一したもの)を指定します。相対パスではなく、完全なURLで書くのが基本です。

すべてのページに、そのページ自身、または統合先のURLを指すcanonicalタグを1つずつ設置します。

WordPressでのcanonical設定

WordPressでは、多くの場合SEOプラグインが自動でcanonicalタグを出力します。

  • Yoast SEO / All in One SEO:インストールして有効化するだけで、各投稿・固定ページに自動的に自身のURLへのcanonicalタグが出力されます。正規URLを個別に変更したい場合は、投稿編集画面のSEO設定欄から指定できます。
  • プラグインを使わない場合:テーマのheader.phpにcanonicalタグを直接記述する方法もありますが、投稿ごとに動的にURLを出し分ける実装が必要になるため、プラグインの利用が現実的です。

設定後は、ページのソースコードを表示(右クリック→「ページのソースを表示」)し、<head>内にcanonicalタグが1つだけ、意図したURLで出力されているかを確認してください。

よくある失敗

  • canonicalタグが複数ある:1ページに2つ以上のcanonicalタグが存在すると、検索エンジンがどちらを採用すべきか判断できず、意図しない結果になることがあります。
  • 全ページに同一のURLを指定してしまう:プラグインの設定ミスやテーマの実装不備で、サイト内すべてのページのcanonicalが固定のトップページURLを指してしまうケース。個別ページがインデックスされなくなるおそれがあります。
  • 自己参照が抜けている:重複がないページでも、自分自身のURLをcanonicalとして指定しておくのが基本(自己参照canonical)です。設定漏れがあると、後で重複ページが増えた際に評価が分散しやすくなります。
  • noindexページとcanonicalの併用ミス:noindexを指定したページに他ページへのcanonicalを設定するなど、矛盾した指示を出してしまうケース。意図が正しく伝わらない原因になります。
  • リダイレクトすべきところをcanonicalで済ませる:URLが完全に不要になった場合(旧ページの統合など)は301リダイレクトが適切です。canonicalは「両方アクセス可能な状態を保ちつつ評価をまとめる」ための仕組みで、リダイレクトの代わりにはなりません。

よくある質問

Q. canonicalを設定すると、指定した以外のURLはアクセスできなくなりますか?

A. いいえ。canonicalタグはURLへのアクセス自体を制限するものではありません。あくまで検索エンジンに「評価をまとめてほしいURL」を伝える指示であり、ユーザーはどのURLにもアクセスできます。

Q. canonicalとリダイレクトはどう使い分ければよいですか?

A. 旧URLが不要になり二度と使わないなら301リダイレクト、パラメータ違いなど両方のURLをそのまま残す必要がある場合はcanonicalタグ、と考えるのが基本です。

Q. canonicalタグを設定すれば重複コンテンツによる評価低下は完全になくなりますか?

A. 評価の分散は防ぎやすくなりますが、絶対的な保証ではありません。Googleはcanonicalタグを「強いヒント」として扱いますが、他の要素(内部リンクの構造など)と矛盾していると、異なるURLが選ばれることもあります。

Q. canonicalタグが正しく機能しているか確認する方法はありますか?

A. Google Search Consoleの「URL検査」ツールで対象URLを調べると、Googleが実際にどのURLを正規URLとして認識しているかを確認できます。

まとめ

  • canonicalタグは、複数存在しうる同一内容のURLについて、正規のURLを検索エンジンに伝える仕組み
  • パラメータ付きURL、wwwありなし、httpとhttpsの混在、リニューアル時のURL変更などが重複の主な原因
  • <head>内に<link rel="canonical" href="正規URL" />の形で記述する
  • WordPressではSEOプラグインの導入で多くの場合自動設定される
  • 複数指定・全ページ同一URL指定・自己参照漏れなどの設定ミスに注意する

canonicalタグの設定は一度整えれば済む作業ですが、サイト構造やリニューアルのタイミングで見直しが必要になることもあります。Web GearのWebザイルでは、URLの正規化やSEOの実務まわりの設定・管理を代行しています。「設定が合っているか不安」という段階からご相談いただけます。