ページの重複が多いのでcanonical(カノニカル?)でブログのページを明確化してみた。
同じページがインデックスされている
googleの Search Console を見ていたら、重複が多いことに気がつく。
重複の内容をみると検索やキャッシュによるもので、ページの表示には問題は無いが気になるのでページを明確化する。
グーグルサーチコンソールでは重複についてはエラーに分類されていないため、googleサーチではあまり問題視されてされてないようだ。
ページのアドレスを明確化する
明確化とはアドレスを指定することで「このページの正式なアドレスは、https://s-fishing.com/view/602? ですよ?」とヘッダー部分に明示します。
例えば、このページのアドレスは https://s-fishing.com/view/602 ですが、次のアドレスでも同じページが表示されます。
- https://s-fishing.com/index.php/view/602
- https://www.s-fishing.com/view/602
- https://s-fishing.com/view/602?pathinfo=view/602
googleのクローラーではどれが本物か判別できないため、どれが正式なアドレスかわからなくなります。(正確にはどれも本物)
下の画像はgoogleサーチにインデックスされたページのパスです。
本来なら https://s-fishing.com/view/349 と登録されるのが望ましいはずです。
Google Search の対策方法
テンプレートの headr.html を修正します。重複の大半がviewモードになっているので、<headr>内にcanonical(カノニカル)を記述します。
<!--{if $smarty.request.freo.mode == 'view'}-->
<link rel="canonical" href="{$freo.core.http_file}/view/{if $entry.code}{$entry.code}{else}{$entry.id}{/if}">
これで
- https://s-fishing.com/index.php/view/602
- https://www.s-fishing.com/view/602
- https://s-fishing.com/view/602?pathinfo=view/602
上記のアドレスがgoogleにクロールされても https://s-fishing.com/view/602 がGoogleにインデックスされることになります。
おわりに
前段で重複については、エラーにならないと言いましたが、Googleとしても同じページをインデックスするかどうかの判定が必要になることから、Google側からしたら明示してほしいでしょう。ユーザー側は明示によるデメリットは無いと思われるので、可能であれば明示した方がいいのかもしれません。
今後は効果を検証してみます。Google Search Console で実際に重複が解除されるかはある程度の時間が必要になります。
んじゃ。
コメント