class Middleman::Paginate::Extension
Constants
- CollectionProxyDescriptor
Public Instance Methods
paginate(collection, base_path, template, per_page: 20, suffix: "/page/:num/index", locals: {}, data: {}, locale: nil)
click to toggle source
# File lib/middleman/paginate/extension.rb, line 51 def paginate(collection, base_path, template, per_page: 20, suffix: "/page/:num/index", locals: {}, data: {}, locale: nil) pages = collection.each_slice(per_page).to_a descriptors = [] pages.each_with_index do |page_collection, i| pager = Pager.new(base_path, suffix, i + 1, pages.size, per_page) opts = { locals: locals.merge(items: page_collection, pager: pager), data: data, locale: locale } descriptors << Middleman::Sitemap::Extensions::ProxyDescriptor.new( Middleman::Util.normalize_path(pager.full_page_path), Middleman::Util.normalize_path(template), opts.dup ) end CollectionProxyDescriptor.new(descriptors) end