RubyOnRails - генерация sitemap
Этот день должен был наступить, и он наступил - мне окончательно надоело обновлять sitemap ручками! И, поборов природную лень, я таки реализовал для своего сайта автоматическую генерацию sitemap.xml. Делается все просто. Создаем контроллер SitemapController:
def indexСоздаем index.rxml в директории views/sitemap/
@urls = ['http://ptica-govorun.ru/', 'http://ptica-govorun.ru/authors']
@quotes = Quote.all
@quotes.each do |q|
@urls.push( url_for :controller => 'quotes', :action => 'show', :id => q.id)
end
headers['Content-Type'] = 'application/xml'
render :layout => false
end
xml.instruct! :xml, :version => '1.0'И редактируем routes.rb:
xml.tag! 'urlset', 'xmlns' => "http://www.sitemaps.org/schemas/sitemap/0.9" do
@urls.each do |url|
xml.tag! 'url' do
xml.tag! 'loc', url
end
end
end
match "/sitemap.xml", :to => "sitemap#index"Посмотреть результат можно тут.
Комментарии
Отправить комментарий