Friday, February 15, 2013

Rails: Sitemap generator


SitemapGenerator genera sitemaps para tu aplicación Rails.


Instalación

  1. Añadir la línea gem 'sitemap_generator' al archivo Gemfile
  2. Ejecutar el comando rake sitemap:install
Esto generará el archivo config/sitemap.rb que contiene la lógica para generar los ficheros sitemap.xml.


Desarrollo

SitemapGenerator::Sitemap.add_links do |sitemap|
Article.find_each do |article|
  sitemap.add article_path(article), :lastmod => article.updated_at
end
end



En este ejemplo se añadirán al sitemap las rutas referentes a artículos.

Las opciones que se pueden añadir para cada url son las siguientes:

  1. priority La prioridad de una url respecto a otras de la web. Valores válidos: de 0.0 a 1.0. Default 0.5 
  2. changefreq Uno de: always, hourly, daily, weekly, monthly, yearly, never. Default weekly
  3. lastmod Fecha de última modificación. Default Time.now
  4. host Optional host for the link's URL. Defaults to default_host
Una vez hecho esto si ejecutamos el comando rake -s sitemap:refresh los sitemaps serán generados en la carpeta public con la siguiente estructura de ficheros: sitemap_index.xml.gz, sitemap1.xml.gz, sitemap2.xml.gz, etc.

Si queremos cambiar la carpeta donde guardar los sitemaps entonces bastará con añadir en el sitemap.rb la siguiente instrucción:



SitemapGenerator::Sitemap.sitemaps_path = 'sitemaps/'



No comments:

Post a Comment