Sha256: 4d3bd2d934e4c4f51fca89a6001db6fd6fd74265557a834d4e9582f5515ca003

Contents?: true

Size: 1.01 KB

Versions: 3

Compression:

Stored size: 1.01 KB

Contents

require 'middleman-core'
require 'middleman-alias/alias-resource'

module Middleman
  class AliasExtension < Middleman::Extension
    def initialize(app, options_hash={}, &block)
      super
    end

    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.url)
            #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

  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
middleman-alias-0.0.11 lib/middleman-alias/extension.rb
middleman-alias-0.0.10 lib/middleman-alias/extension.rb
middleman-alias-0.0.9 lib/middleman-alias/extension.rb