• 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31

(追記) スキーマのネームスペースが正しくありませんでした。修正しました。最新のネームスペースは適宜参照してください。

検索エンジンに正しくインデックスしてもらうのは大事です。今回モバイルのも同時に作ってみました。

###sitemap.xmlの形式
下記Googleのウェブマスター向けヘルプセンターを参照。

###routes.rbにサイトマップを登録
rails>>
map.m_sitemap 'mobile_sitemap.xml', :controller => "mobile", :action => "sitemap"
map.sitemap 'sitemap.xml', :controller => "top", :action => "sitemap"
<<--

###viewを作成
ファイルを作成します。:app/views/top/sitemap.xml.builder
(注) サイトマップのスキーマが0.9だと、Google,Yahoo, MSNなどのサーチエンジンが読めるようです。
(注) lastmodタグについてはDate.today.xmlschemaのようにxmlschemaが返す表示形式でOKです。
rails>>

sitemap.xml

xml.instruct! :xml, :version=> '1.0', :encoding => 'UTF-8'
xml.urlset :xmlns => 'http://www.sitemaps.org/schemas/sitemap/0.9' do
xml.url do
xml.loc root_url
xml.changefreq 'daily'
xml.priority '0.9'
end

xml.url do
xml.loc help_url
xml.changefreq 'monthly'
xml.priority '0.9'
end
end
<<--
ブラウザからアクセスして、サイトマップが表示されるか確認します。
モバイルサイトマップは下記。
(注) モバイルはまだ標準化されていない?ようで、googleのスキーマ 0.84を指定します。
(注) **モバイル用のname spaceを設定する**必要があります。
rails>>

mobile_sitemap.xml

xml.instruct! :xml, :version=> '1.0', :encoding => 'UTF-8'
xml.urlset :xmlns => 'http://www.google.com/schemas/sitemap/0.84',
"xmlns:mobile" => 'http://www.google.com/schemas/sitemap-mobile/1.0' do
xml.url do
xml.loc m_url
xml.lastmod lastmodified.xmlschema
xml.mobile :mobile
end
<<--

###サイトマップ登録
HTMLに下記を書いておくと、Google, Yahoo!, MSNもとっていってくれます。
rails>>

<<-- [Googleウェブマスターツール](https://www.google.com/webmasters/tools/)でサイトマップを登録すると、サイトマップが正しくない時にエラー+アドバイスをくれるので便利でした。一度目はマスターツールで確認して、それ以降は上記のタグでやるのがよさそうですね。

###Refs
http://brass.to/blog/sitemap_xml_by_rails2_0.html
http://www.google.com/webmasters/tools/
http://www.google.com/support/webmasters/bin/answer.py?answer=35738 googleのサイトマップのエラーと警告について
http://blog.livedoor.jp/botany/archives/50281545.html Google,Yahoo!,MicrosoftがSitemap protocol(サイトマッププロトコル)で合意に

posted by satoko satoko on Thu 10 Jul 2008 at 15:26 with 0 comments