同じ内容を含むページが複数ある場合、サーチエンジンはまとめページを代表として表示する傾向があると思う(未検証だけど)。これはいいことだ。 更にブログでは、カテゴリのまとめページと月/日のアーカイブとでは前者を優先してほしい。 なぜなら、月/日アーカイブはトピックが混在していたりして検索からのランディングページとしては不向きだからだ。 サイトマップファイルを定義できるところでは、カテゴリのまとめページの優先度を高くしておくのがよいだろう。
逆に月/日のアーカイブを検索エンジンのクロール対象から除外する方法も考えられる。
しかし、
b2evoのパーマリンクURLは/yyyy/mm/dd/idの形式、月・日のアーカイブは/yyyy/mm/(dd/)なのでrobots.txtで月日アーカイブを除外しようとすると記事のページもクロールされなくなってしまう(robots.txtではディレクトリを指定すると、そこに含まれるページ全てに同じ指定をしたように扱われる)。
そこで、スキンテンプレートにコードを追加して、URLが月日アーカイブの形式の時だけ<meta name="Robots" content="noindex"/>をヘッダに出力するようにしてみた。
...
skins/スキン名/_main.phpファイルの<meta name="description"とか出力しているコードの前辺りに、次のコードを追加する。
<?php if(ereg('/[0-9]{4}/[0-9]{2}(/[0-9]{2})?/$', regenerate_url('/.*/','','','&'))){ echo ''; echo "\n"; } ?>
Trackback URL (right click and copy shortcut/link location)