Criando um sitemap em um projeto Sinatra

Seguindo a linha de artigos com dicas para o Sinatra, desta vez vamos aprender como criar um XML de Sitemap, aquele arquivo que descreve as URLs do seu site com o objetivo de facilitar a indexação dos mecanismos de busca. Assim com o Rails, o Sinatra também conta com um grande número de desenvolvedores que produzem gems para facilitar a nossa vida, e nesse caso, vamos usar a gem xml-sitemap.

gem install xml-sitemap

Após instalar a gem, precisamos declarar no Sinatra uma rota que será responsável por responder as requisições do arquivo de Sitemap.

get '/sitemap.xml' do
    require 'xml-sitemap'
end

Chegou a hora de descrever as URLs de seu website. Vou colar aqui agora uma cópia do que fiz no site da Top Lab, para efeito de exemplo:

get '/sitemap.xml' do
    require 'xml-sitemap'
 
    map = XmlSitemap::Map.new('toplab.me') do |m|
      m.add '/sobre'
      m.add '/servicos'
      m.add '/projetos' , :priority => 0.2
      m.add '/blog'     , :priority => 0.2
      m.add '/contato'
    end
 
    map.render
end

Logo após instanciar o objeto XMLSitemap::Map com a url que desejamos, adicionamos as nossas URLs. Podemos alterar a prioriddade das URLs com o atributo :priority. Após declarar todas as URLs e fechar o bloco de declaração, basta chamar o método render do objeto que foi instanciado.

Para saber tudo dessa gem, vá ao Github e veja todos os detalhes de configuração dela: https://github.com/sosedoff/xml-sitemap

Leia também:

Comments

Deixe uma resposta

O seu endereço de email não será publicado Campos obrigatórios são marcados *

Você pode usar estas tags e atributos de HTML: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>