2012-06-23 70 views
1

我有一個使用Rails編碼的多語言站點。我使用gem sitemap_generator生成站點地圖。問題是我只生成一次語言的網址。我使用params [:locale]更改網站的默認語言。在不同的語言環境中使用sitemap_generator

這是我sitemap.rb

SitemapGenerator::Sitemap.default_host = "http://www.dominio.com" 

SitemapGenerator::Sitemap.create do 
    Product.find_each do |product| 
     add url_for(:controller => 'products', :action => 'show', :id => product, :host => '', :only_path => true), :lastmod => product.updated_at 
    end 
end 

我怎樣才能生成的URL爲EN,ES和它區域設置?使用此代碼,它只會生成默認的區域設置(en)。

回答

1
[:en, :es].each do |locale| 
    Product.find_each do |product| 
    add url_for(:controller => 'products', :action => 'show', :id => product, :host => '', :only_path => true, :locale => locale), :lastmod => product.updated_at 
    end 
end 
+0

如果保存區域設置會話,它可以方便地添加到路由如http東西://主機/:區域設置/ ...並用它在站點地圖 – gayavat

+0

感謝gayavat,它的工作! – jgiunta

相關問題