class Jekyll::Renderer
def place_in_layouts(content, payload, info)
Render layouts and place document content inside.
def place_in_layouts(content, payload, info) output = content.dup layout = layouts[document.data["layout"].to_s] validate_layout(layout) used = Set.new([layout]) # Reset the payload layout data to ensure it starts fresh for each page. payload["layout"] = nil while layout output = render_layout(output, layout, info) add_regenerator_dependencies(layout) if (layout = site.layouts[layout.data["layout"]]) break if used.include?(layout) used << layout end end output end