Class: Middleman::Sitemap::Extensions::Redirects
- Defined in:
- lib/middleman-core/sitemap/extensions/redirects.rb
Overview
Manages the list of proxy configurations and manipulates the sitemap to include new resources based on those configurations
Constant Summary
Constants included from Contracts
Instance Attribute Summary
Attributes inherited from Extension
Instance Method Summary collapse
- #create_redirect(path, opts = {}, &block) ⇒ Object
-
#initialize(app, config = {}, &block) ⇒ Redirects
constructor
A new instance of Redirects.
- #manipulate_resource_list(resources) ⇒ Object
Methods inherited from Extension
activated_extension, #add_exposed_to_context, #after_build, #after_configuration, after_extension_activated, #after_extension_activated, #before_build, #before_configuration, clear_after_extension_callbacks, config, expose_to_application, expose_to_config, expose_to_template, helpers, option, #ready, resources
Methods included from Contracts
Constructor Details
#initialize(app, config = {}, &block) ⇒ Redirects
Returns a new instance of Redirects.
15 16 17 18 19 |
# File 'lib/middleman-core/sitemap/extensions/redirects.rb', line 15 def initialize(app, config={}, &block) super @redirects = {} end |
Instance Method Details
#create_redirect(path, opts = {}, &block) ⇒ Object
25 26 27 28 29 30 31 |
# File 'lib/middleman-core/sitemap/extensions/redirects.rb', line 25 def create_redirect(path, opts={}, &block) opts[:template] = block if block_given? @redirects[path] = opts @app.sitemap.rebuild_resource_list!(:added_redirect) end |
#manipulate_resource_list(resources) ⇒ Object
36 37 38 39 40 41 42 43 44 45 46 |
# File 'lib/middleman-core/sitemap/extensions/redirects.rb', line 36 def manipulate_resource_list(resources) resources + @redirects.map do |path, opts| r = RedirectResource.new( @app.sitemap, path, opts[:to] ) r.output = opts[:template] if opts[:template] r end end |