Show the code for sample generator first [skip ci]

This commit is contained in:
Ashwin Maroli 2019-02-12 22:12:50 +05:30
parent 20d9cbe231
commit 9a4b74c44b
1 changed files with 17 additions and 16 deletions

View File

@ -44,6 +44,20 @@ This is a more complex generator that generates new pages:
```ruby
module Jekyll
class CategoryPageGenerator < Generator
safe true
def generate(site)
if site.layouts.key? 'category_index'
dir = site.config['category_dir'] || 'categories'
site.categories.each_key do |category|
site.pages << CategoryPage.new(site, site.source, File.join(dir, category), category)
end
end
end
end
# A Page subclass used in the `CategoryPageGenerator`
class CategoryPage < Page
def initialize(site, base, dir, category)
@site = site
@ -59,19 +73,6 @@ module Jekyll
self.data['title'] = "#{category_title_prefix}#{category}"
end
end
class CategoryPageGenerator < Generator
safe true
def generate(site)
if site.layouts.key? 'category_index'
dir = site.config['category_dir'] || 'categories'
site.categories.each_key do |category|
site.pages << CategoryPage.new(site, site.source, File.join(dir, category), category)
end
end
end
end
end
```