Rails で作成中の Web サイトに sitemap を作成したいなーと思って探したら SitemapGenerator というのが良さそうだったのでメモ。
SitemapGenerator の使い方
まず Gemfile に以下の行を追加し、 bundle install する。
gem 'sitemap_generator'
gem が追加出来たら以下のコマンドを実行し、config/sitemap.rb を作成する。
rake sitemap:install
これで SitemapGenerator を使う準備ができた。
以下のコマンドで sitemap を生成する事ができる。
$ rake sitemap:refresh:no_ping
In '/Users/ryomatsu/Dropbox/project/hoge/public/':
+ sitemap1.xml.gz 1 links / 333 Bytes
+ sitemap.xml.gz 1 sitemaps / 229 Bytes
Sitemap stats: 1 links / 1 sitemaps / 0m00s
$
$ # 検索エンジンへ更新した事を知らせる場合(本番時)は no_ping を外す。
$ rake sitemap:refresh
デフォルトでは http://www.example.com/ が指定されているだけだ。
あとは config/sitemap.rb 内に sitemap 生成の設定や検索エンジンに知らせたい URL を記述したりする。
SitemapGenerator::Sitemap.default_host = "http://www.example.com"
SitemapGenerator::Sitemap.create_index = true
SitemapGenerator::Sitemap.create do
# all single pages
Pages.find_each do |p|
add '/pages/' + p.id
end
end
設定は ruby で記述でき、model も読み込めるので上記のようにやれば Pages に保存されたデータを全て sitemap に追加する事ができます。
検索エンジンからの流入のためにもやっておきましょう。
コメント