module JekyllThemeGuidesMbland

Constants

VERSION

Public Class Methods

update_navigation_configuration(basedir) click to toggle source

Automatically updates the `navigation:` field in _config.yml.

Does this by parsing the front matter from files in `pages/`. Preserves the existing order of items in `navigation:`, but new items may need to be reordered manually.

# File lib/jekyll-theme-guides-mbland/navigation.rb, line 127
def self.update_navigation_configuration(basedir)
  config_path = File.join basedir, '_config.yml'
  config_data = SafeYAML.load_file config_path, safe: true
  return unless config_data
  nav_data = config_data['navigation'] || []
  NavigationMenu.validate_existing_data(nav_data)
  NavigationMenu.update_navigation_data(nav_data, basedir, config_data)
  NavigationMenuWriter.write_navigation_data_to_config_file(config_path,
    nav_data)
end