21 lines
974 B
Ruby
21 lines
974 B
Ruby
SitemapGenerator::Sitemap.default_host = "http://hackingoff.com"
|
|
|
|
SitemapGenerator::Sitemap.create do
|
|
routes = Rails.application.routes.routes.map do |route|
|
|
{alias: route.name, path: route.path.spec.to_s, controller: route.defaults[:controller], action: route.defaults[:action]}
|
|
end
|
|
|
|
# Set a list of controllers you don't want to generate routes for.
|
|
# /rails/info in particular maps to something inaccessible.
|
|
# redirects have a nil controller. This prevents duplicate content penalties.
|
|
banned_controllers = ["rails/info", nil]
|
|
routes.reject! {|route| banned_controllers.include?(route[:controller])}
|
|
|
|
# sitemap_generator includes root by default; prevent duplication
|
|
routes.reject! {|route| route[:path] == '/'}
|
|
|
|
routes.each {|route| add route[:path][0..-11]} # Strips off '(.:format)
|
|
|
|
# Notice the below if you're hosting Jekyll/Octopress in a subdirectory
|
|
# or otherwise want to index content outside of Rails' routes.
|
|
# add_to_index '/path/sitemap.xml' |