load_menus
Como utilizar a tag load_menus.
Menus são blocos de conteúdo dinâmicos que podem ser listados por posição usando a tag {% load_menus %}
.
Com a tag você acessa o array de menus através da variável {{ loaded_menus }}
, e visualiza os menus com a position
especificada. Para percorrer o array utilizamos a tag {% for %}
iterando entre os menus com a variável {{ menu }}
.
<ul>
{% load_menus position: "posicao" %}
{% for menu in loaded_menus %}
<li>
<a href="{{ menu.url }}"
{% unless menu.tooltip == blank %}class="{{ menu.tooltip }}"{% endunless %}
{% if menu.external %}target="_blank"{% endif %}>
{% if menu.image_url %}
<img src="{{ menu.image_url }}" alt="{{ menu.title }}" />
{% endif %}
{{ menu.title }}
</a>
{% if menu.children %}
<ul>
{% for submenu in menu.children %}
<li>
<a href="{{ submenu.url }}"
{% unless submenu.tooltip == blank %}class="{{ submenu.tooltip }}"{% endunless %}
{% if submenu.external %}target="_blank"{% endif %}>
{{ submenu.title }}
</a>
</li>
{% endfor %}
</ul>
{% endif %}
</li>
{% endfor %}
</ul>
Atributos do objeto
children
: retorna um array de submenus do menu atual. Esses submenus possuem os mesmos atributos do objeto{{ menu }}
e podem ser percorridos por um loopfor
.
{% if menu.children %}
Esse menu possui {{ items_count }} submenus:
<ul>
{% for submenu in menu.children %}
<li>
<a href="{{ submenu.url }}">
{{ submenu.title }}
</a>
{% if submenu.children %}
<ul>
{% for childmenu in submenu.children %}
<!-- ... -->
{% endfor %}
</ul>
{% endif %}
</li>
{% endfor %}
</ul>
{% endif %}
-
external
: retornatrue
caso o gestor tenha optado por esse link abrir em uma nova janela, oufalse
caso o gestor não tenha marcado a opção. -
image_url
: retorna a URL da imagem caso o menu atual aponte para uma tag e ela possua uma imagem.
{% if menu.image_url %}
<a href="{{ menu.url }}">
<img src="{{ menu.image_url }}" alt="{{ menu.title }}" />
</a>
{% else %}
<a href="{{ menu.url }}">
<span>{{ menu.title }}</span>
</a>
{% endif %}
items_count
: retorna o número de submenus que o menu atual possui.
{% if menu.items_count > 0 %}
{% assign has_submenu = true %}
{% else %}
{% assign has_submenu = false %}
{% endif %}
<li {% if has_submenu %}class="has-submenu"{% endif %}>
{{ menu.title }}
{% if has_submenu %}
<ul>
<!-- ... -->
</ul>
{% endif %}
</li>
-
title
: retorna o título do menu. -
tooltip
: retorna o valor informado no campotooltip
na plataforma. Você pode usar esse campo para dinamizar classes ou cores de itens de submenu.
<li {% if menu.tooltip == "promo" %}style="color: red"{% endif %}>
<!-- ... -->
</li>
url
: retorna a URL do menu.
Updated about 1 year ago