Class: Middleman::AliasExtension

Inherits:
Extension
  • Object
show all
Defined in:
lib/middleman-alias/extension.rb

Instance Method Summary collapse

Constructor Details

#initialize(app, options_hash = {}, &block) ⇒ AliasExtension

Returns a new instance of AliasExtension.



6
7
8
# File 'lib/middleman-alias/extension.rb', line 6

def initialize(app, options_hash={}, &block)
  super
end

Instance Method Details

#manipulate_resource_list(resources) ⇒ Object



10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
# File 'lib/middleman-alias/extension.rb', line 10

def manipulate_resource_list(resources)
  resources.each do |resource|
    if resource.data["alias"]
      Array(resource.data["alias"]).each do |mm_alias|
        alias_url = mm_alias
        alias_url += "index.html" if alias_url.match(/\/$/)
        existing_resource = resources.select{|r| r.destination_path == alias_url }.first
        next if existing_resource

        resources.push Middleman::Sitemap::AliasResource.new(@app.sitemap, alias_url, resource)
        #Sitemap::Resource.new(@app.sitemap, alias_url).tap do |p|
          #p.proxy_to("alias.html")
          #p.add_metadata locals: {
            #destination: resource.url
          #}
          #resources.push p
        #end
      end
    end
  end
  resources
end