Files
site_users/themes/site_users_microsite_theme/templates/navigation/menu.html.twig
Quintino A. G. Souza 505c9fb64a Adiciona regiões Top Bar e Navigation ao tema do microsite
- Top Bar: barra estreita acima do header para menu do usuário,
  fundo escuro com links claros alinhados à direita.
- Navigation: barra horizontal abaixo do header para menu da página,
  estilo baseado no nav-secondary do Olivero (hover com underline animado).
- Inclui menu.html.twig para gerar as classes .menu, .menu__item e
  .menu__link necessárias para o CSS funcionar (stable9 não as adiciona).

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-16 11:10:36 -03:00

40 lines
1.2 KiB
Twig

{#
/**
* @file
* Template de menu do microsite.
*
* Gera as classes usadas pelo CSS da região nav (.menu, .menu__item,
* .menu__link), seguindo o mesmo padrão de classes do Olivero.
*/
#}
{% import _self as menus %}
{% set attributes = attributes.addClass('menu') %}
{{ menus.menu_links(items, attributes, 0) }}
{% macro menu_links(items, attributes, menu_level) %}
{% import _self as menus %}
{% if items %}
<ul{{ attributes.addClass('menu--level-' ~ (menu_level + 1)) }}>
{% set attributes = attributes.removeClass('menu--level-' ~ (menu_level + 1)) %}
{% for item in items %}
<li{{ item.attributes.addClass([
'menu__item',
'menu__item--level-' ~ (menu_level + 1),
item.in_active_trail ? 'menu__item--active-trail',
]) }}>
{{ link(item.title, item.url, {
'class': [
'menu__link',
'menu__link--level-' ~ (menu_level + 1),
item.in_active_trail ? 'menu__link--active-trail',
]
}) }}
{% if item.below %}
{{ menus.menu_links(item.below, attributes, menu_level + 1) }}
{% endif %}
</li>
{% endfor %}
</ul>
{% endif %}
{% endmacro %}