採用するのはいいが……

小粋空間: Sitemaps 0.90 用テンプレート(Google・Yahoo!・MSN サポート予定)で素晴らしく熟成された Sitemaps のテンプレートが公開されています。どのあたりが素晴らしいかは、この記事のあとの方で。

ここでいう「サイトマップ(Sitemaps)」というのは Google が(?)提唱している、検索エンジンが情報収集するために利用するファイルのことを指します。──って、「タグ」に関しても思うのですが、こうした新しい技術には、紛らわしくないように新しい固有名詞を考えて欲しいですね。「AJAX」みたいな感じで。

「サイトマップでタグの情報も付ける方法は──」と、最新情報を追っかけている人じゃないと意味不明、みたいな。

余談はさておき、Googleなど3社、Sitemapsをサポート - サイト管理者は要注目 (MYCOMジャーナル) とのことですが、ものっっっ凄く肝心なことが抜けている気がします。

もの凄く肝心なこと

それは、「検索エンジンのクローラは、どうやって Sitemaps の場所を見つけるのか?」──

──いや、Google ウェブマスター ツールYahoo! Site Explorer のことは知っていますよ。しかし、MSN はどうやって Sitemaps の情報を得るのか? また、他の検索エンジンが Sitemaps を採用するとしたら、その度にサイト管理者はその検索エンジンに登録するのか? ── マンドクセー!!

sitemaps.org - FAQ をざっと読んだ限りでは、Sitemaps の場所を知らせる方法は明示されていません(よね?)。

ヘッダに書く

さて、今回の Sitemaps 騒動で一部の人はニヤニヤ顔、一部の人は苦々しい顔かと。

──そう、RORでYahoo検索(YST)とMSNもカバーする先進サイトマップを作ろう で紹介されている ROR という、これも一種のサイトマップです。── Google Sitemaps を Yahoo! と MSN が採用することで、ROR は消えゆく運命なのでしょう……。本当に、Googleタソ は罪作りな存在ですね。

ただ、この ROR の導入方法がシンプルでスマート。作成方法はさておき、検索エンジンへ ROR の場所を知らせるために、<head></head> 内に、

<link rel="alternate" type="application/rss+xml" title="ROR" href="ror.xml" />

と一行書いておくだけ、というクールさ。

ということで、Google Sitemaps でも、

<link rel="alternate" type="application/rss+xml" title="Google Sitemaps" href="sitemaps.xml" />

みたいな感じで書いておくと、どの検索エンジンでも拾ってくれないですかね?

気になって調べると、プロトコルSitemapsをMovableTypeのテンプレートで作成/楽 で同じようなことを考えている記事が。しかし、公式にはどうなるか、まだ決まってないようですね。

自動で拾う

あるいは、各検索エンジンが勝手に「ブログサイトのルートディレクトリから sitemaps.xml を探す」のではないか、と。しかし、Sitemaps を採用するサイトって、全体の何割なんだろう──とか、そもそも sitemaps.xml 以外のファイル名はダメなのか、とかいろいろ問題があるような。

何より、検索エンジンが「どこからもリンクされていないファイルにアクセスを試みる」こと自体が、「不快」と感じる人がいるのでは。まるでパンツを見せられたときのように(スルー力!)。

──そこでちょっと思ったのが、robots.txt に Sitemaps の場所を書いておく、というのもいいかも。

まぁ、いずれにしても、正式な方法が決まってない(と思う)ので、勝手に何かしない方が無難ですね……。

小粋空間の Sitemaps テンプレートのすごいところ

2.テンプレートの改善点からいくつかポイントが紹介されています。

まず、「すべての記事」の情報を得るのに

<MTEntries offset="0"></MTEntries>

という指定が目からウロコ。よくある lastn="9999" よりスマートですね。

あと、「週間アーカイブ」を作っていてもいなくても対応できるように、

<MTIfArchiveTypeEnabled archive_type="Weekly"></MTIfArchiveTypeEnabled>

という指定をしています。なるほどー。上記のコードで囲まれた部分は、「週間アーカイブ」を作っていない場合は無視されるわけです。さらに、

<MTEntries lastn="1" sort_by="modified_on"></MTEntries>

という指定で更新順に並べ替えた最新の1件の情報を抜き出しています。細かい!

こういう hack って、普段から MT テンプレートをいじっていないと、なかなか出てこないものですね。見習いたい……。

そんなわけで、hack というより fu●k しまくったコードになっている、このブログのテンプレートをあちこち直そうかと。[あとで]

[2] このページの一番上へ戻る