Module: Katalyst::Navigation::FrontendHelper

Defined in:
app/helpers/katalyst/navigation/frontend_helper.rb

Instance Method Summary collapse

Instance Method Details

#render_navigation_items(items, list: {}, **options) ⇒ Object

Render items without a wrapper list, useful for inline rendering of items

@param(items: [Katalyst::Navigation::Item])

Returns:

  • Structured HTML containing top level + nested navigation links



25
26
27
28
29
30
31
32
# File 'app/helpers/katalyst/navigation/frontend_helper.rb', line 25

def render_navigation_items(items, list: {}, **options)
  builder = default_navigation_builder_class.new(self, item: options, list: list)
  capture do
    items.each do |item|
      concat builder.render_item(item)
    end
  end
end

#render_navigation_menu(menu, item: {}, list: {}, **options) ⇒ Object

Render a navigation menu. Caches based on the published version’s id.

@param(menu: Katalyst::Navigation::Menu)

Returns:

  • Structured HTML containing top level + nested navigation links



12
13
14
15
16
17
18
19
# File 'app/helpers/katalyst/navigation/frontend_helper.rb', line 12

def render_navigation_menu(menu, item: {}, list: {}, **options)
  return unless menu&.published_version&.present?

  cache menu.published_version do
    builder = default_navigation_builder_class.new(self, menu: options, item: item, list: list)
    concat builder.render(menu.published_tree)
  end
end