Sha256: 9d4fd3c23a725efba702aa13d9504a8519ed3a12241e2bdd973b42156231a507

Contents?: true

Size: 896 Bytes

Versions: 3

Compression:

Stored size: 896 Bytes

Contents

require 'builder' # For Tilt

module Alula
  class Generator::Sitemap < Generator
    def generate
      urls_callback = ->(context) {
        (context.site.content.posts + context.site.content.pages)
          .reject {|content| content.generator == self }
          .collect { |content|
            content.languages.collect{|lang| {
              url: content.url(lang),
              lastmod: content.last_modified,
              priority: content.generator.nil? ? 0.5 : 0.3,
            }
          }
        }.flatten
      }
      
      self.site.content.pages << Alula::Content::Page.new({
        generator: self,
        urls: urls_callback,
        title: "Sitemap",
        name: "sitemap.xml",
        slug: "sitemap",
        sidebar: false,
        template: self.options.template || "/:locale/:name",
        site: self.site,
        layout: "sitemap",
      })
    end
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
alula-0.4.2 lib/alula/generators/sitemap.rb
alula-0.4.1 lib/alula/generators/sitemap.rb
alula-0.4.0 lib/alula/generators/sitemap.rb