class Sitepress::Extensions::Layouts

Register layouts with resources that match certain patterns.

Constants

Rule

Public Class Methods

new() click to toggle source
# File lib/sitepress/extensions/layouts.rb, line 7
def initialize
  @rules = Array.new
end

Public Instance Methods

layout(layout, &block) click to toggle source

Register a layout for a set of resources.

# File lib/sitepress/extensions/layouts.rb, line 12
def layout(layout, &block)
  @rules << Rule.new(layout, block)
end
process_resources(node) click to toggle source
# File lib/sitepress/extensions/layouts.rb, line 16
def process_resources(node)
  node.flatten.each do |resource|
    @rules.each do |rule|
      if rule.processor.call(resource)
        resource.data["layout"] ||= rule.layout
      end
    end
  end
end