[レベル: 上級]
複数のサイトで同じ記事を同時に配信する、いわゆるシンジケーション (syndication) では、オリジナルの記事を Google にインデックスさせるためには rel="canonical"
の構成が最も推奨される方法です。
For syndication, using rel=canonical is the best approach (it doesn't guarantee only one version is shown though). For internationalization, use hreflang instead.
— Google Webmasters (@googlewmc) December 2, 2019
配信された側のサイトの記事から配信した側のサイト(つまりオリジナル記事)へ向けて rel="canonical"
を指定します。
しかしながら、rel="canonical"
の指定に Google が従わず、配信した側のサイトではなく配信された側のサイトの記事(つまり複製記事)を検索結果に標示するケースがあります。
ありがちな理由を元 Google 社員が説明しました。
元 Google 社員が説明するシンジケーション記事の rel=”canonical” に Google が従わない 3 つ理由
シンジケーション記事で rel=”canonical” を構成しているにもかかわらず Google が無視することについて言及した Search Engine Roundtable の記事 で、元 Google 社員の Vanessa Fox(ヴァネッサ・フォックス)氏がよくある原因をコメント欄に書き込みました。
※ちなみに、ヴァネッサさんは Search Console の前身である Webmaster Tools を開発した人
理由 1:
シンジケーション記事(配信された側のページ)を Google が最初にクロールしてしまった場合。最も多いケース。正規ページ(配信した側のページ)がまだインデックスされていないので、正規バージョンに Google が統合できない。このケースはたいていは時間とともに解消される。が、時間がかかることもある。
理由 2:
rel="canonical"
に技術的な問題が発生している場合――例: robots.txt でブロックされている、ページが noindex されている、リダイレクトされている、rel="canonical"
が間違っている、構文が間違っている、Google が実行できない JavaScript で rel="canonical"
が生成されている
理由 3:
配信された側の記事に大幅にコンテンツが追加されている。
シンジケーションの場合は、先にインデックスさせることが重要です。rel="canonical"
でオリジナル記事に正規化していたとしても、正規バージョンを Google がインデックスされていなければオリジナルを認識できません。
ページ公開後にすみやかにクロールしてもらうために、サイトマップ送信は必須です。
WebSub (PubSubHubbub) も役に立つかもしれません。
可能であれば、配信される側の公開を少し遅らせてもいいでしょう。
技術的なミスは当然あってはならないことです。
配信された側にコンテンツが追加されていて、もはや同一記事とは呼べないくらいの違いがあるなら rel=”canonical” に Google が従わないことはありえそうです。
裏を返せば、配信された側の記事を検索結果に出したいならコンテンツをたっぷり足すということができそうです(配信側の許可を得られればの話ですが)。
ここで挙げた 3 つ以外の理由も考えられますが、ほかのサイトに記事配信していてる場合は参考にしてください。
注意点は、rel="canonical"
の使用が大前提になっていることです。rel="canonical"
なしでは、配信した側のサイトの記事ではなく配信された側のサイトの記事が検索結果に出てくる確率は格段に高くなります。