class Jekyll::TagsGenerator
Public Instance Methods
atomize(site, type, posts)
click to toggle source
# File _plugins/jekyll-tagsgenerator.rb, line 20 def atomize(site, type, posts) path = "/tag/" + posts[0].slugify atom = AtomPageTags.new(site, site.source, path, type, posts[0], posts[1]) site.pages << atom end
build_subpages(site, type, posts)
click to toggle source
# File _plugins/jekyll-tagsgenerator.rb, line 14 def build_subpages(site, type, posts) posts[1] = posts[1].sort_by { |p| -p.date.to_f } atomize(site, type, posts) paginate(site, type, posts) end
generate(site)
click to toggle source
# File _plugins/jekyll-tagsgenerator.rb, line 8 def generate(site) site.tags.each do |tag| build_subpages(site, "tag", tag) end end
paginate(site, type, posts)
click to toggle source
# File _plugins/jekyll-tagsgenerator.rb, line 26 def paginate(site, type, posts) pages = Jekyll::Paginate::Pager.calculate_pages(posts[1], site.config['paginate'].to_i) (1..pages).each do |num_page| pager = Jekyll::Paginate::Pager.new(site, num_page, posts[1], pages) path = "/tag/" + posts[0].slugify if num_page > 1 path = path + "/page#{num_page}" end newpage = GroupSubPageTags.new(site, site.source, path, type, posts[0]) newpage.pager = pager site.pages << newpage end end