| « headタグ内のナビゲーション用のリンク | メインカテゴリが同じもの同士のpermalinkを連携 » |
なぜか検索エンジンのロボットがJavaScript書き出しのリンクを辿るので…
昨晩、b2evolutionの個別の記事の閲覧モードにおいて、一つの記事から、別の記事へとナビゲーション用のリンクを張るため、previous_post()とnext_post()に引数を加えるようにして、スキンに変更を加えた。
デフォルトの設定のままだと、マルチブログを構成している際に、不具合があるからである。
ただ、上記の関数から生成されるリンクは、通常のpermalinkのURL
http://www.xdelta.net/blog/FreeBSD/2006/03/11/p154
と同じものではなく、
http://www.xdelta.net/blog/FreeBSD?p=154&more=1&c=1
といった形で生成されてしまう。
同一内容のコンテンツが複数のURLで呼び出されることは、なるべく避けたいので、少なくとも、検索エンジンのロボットには巡回されないよう、JavaScript書き出しにしておいた。つまり、
<script type="text/javascript"><!--
document.write('<li><a href="http://www.xdelta.net/blog/FreeBSD?p=154&more=1&c=1">前の投稿: メインカテゴリが同じもの同士のpermalinkを連携</a></li>');
// --></script>
として出力されるように。
しかし、なぜか、一晩置いてログを見てみると、
Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)
から、上記の形式のURLでのアクセスがかなりある。変更以前は皆無だったのに…。
ロボットがJavaScriptを解釈するのか、コメント行を無視しないのかということも興味深いけど、それはともかく、昨日の変更は少々、杜撰とも言えたので、該当関数自体書き直してみた。
ユーザ定義関数として、conf/hack.phpにでも追加して、それぞれprevious_post()やnext_post()に対応するものとして使用すればOK。
これで、通常のpermalinkと同一のURLを生成できると思います。わざわざ、JavaScriptに書き出して、ロボットをごまかす必要もなくなります。使い方は同じ。
Trackback address for this post
Trackback URL (right click and copy shortcut/link location)
Feedback awaiting moderation
This post has 112 feedbacks awaiting moderation...