Class: Jekyll::Endless::TagPageGenerator
- Inherits:
-
Generator
- Object
- Generator
- Jekyll::Endless::TagPageGenerator
- Defined in:
- lib/jekyll-theme-endless/generate-tagpages.rb
Overview
TagPageGenerator is a subclass of Generator
Instance Method Summary collapse
-
#generate(site) ⇒ Object
A Generator needs to implement the generate method.
Instance Method Details
#generate(site) ⇒ Object
A Generator needs to implement the generate method
38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 |
# File 'lib/jekyll-theme-endless/generate-tagpages.rb', line 38 def generate(site) Jekyll.logger.info("[INFO] Starting TagPage generation") # If a layout with the name `page-tag` exists if site.layouts.key? 'page-tag' Jekyll.logger.info("TagPageGenerator", "[INFO] 'page-tag' layout found") # The directory in which the files are to be created is configured in `site.tag_dir`. # If not, the directory `tags/` is used. dir = site.config['tag_dir'] || 'tags' Jekyll.logger.info("TagPageGenerator", "[INFO] Using tag directory: #{dir}") # For each tag in the tag-list: site..each_key do |tag| # Create a page-object using TagPage and add it to the `site.pages` array site.pages << TagPage.new(site, site.source, File.join(dir, tag), tag) Jekyll.logger.debug("TagPageGenerator", "[DEBUG] TagPage created for tag: #{tag}") end Jekyll.logger.info("TagPageGenerator", "[INFO] All tags processed successfully") else Jekyll.logger.error("TagPageGenerator", "[ERROR] Could not find the layout 'page-tag'. Create a file '_layouts/page-tag.html' to fix this error. Skipping TagPage generation for now.") end Jekyll.logger.info("TagPageGenerator", "[INFO] TagPage generation finished") end |