Menú - Bsale-IO/template-docs GitHub Wiki

Este componente depende de los Menús de navegación que son configurados en

Tienda en Linea > Navegación para más información clic aquí

Variables

variables descripción
{{menu}} objeto conjunto de enlaces del menu
{{item}} objeto elemento de iteracion
{{ item.ml_id }} id del elemento en el menú
{{ item.ml_name }} nombre del elemento en el menú
{{ item.ml_link }} enlace del elemento en el menú
{{item.ty_id}} tipo de enlace

Definir Componente Menú

Debe crear un componente nuevo con filtro a usar: get_component dentro de este componente debe utilizar la siguiente estructura

Menú

  • Camisetas
  • Pantalones

Estructura Básica

{% for item in menu %}
   {{ item.ml_name }}
   {{ item.ml_link }}
   {{ item.ty_id }}
{% endfor %}

Estructura en html

<ul>
   {% for item in menu %}
      <li>
         <a href="{{ item.ml_link }}" title="{{ item.ml_name }}">
            {{ item.ml_name }}
         </a>
       </li> 
   {% endfor %}
</ul>

Resultado

<ul>
    <li>
        <a href="/collection/camisetas" title="Camisetas">
           Camisetas
        </a>
    </li>
    <li>
        <a href="/collection/Pantalones" title="Pantalones">
           Pantalones
        </a>
    </li> 
</ul>

Menú de más de un nivel

Menú

  • Camisetas
  • Pantalones
    • pantalones de hombre
    • pantalones de mujer
      • jeans
      • tela
<ul>
    {% for item in menu %} 
        <li>
            <!-- item nivel 1-->
            <a href="{{ item.ml_link }}" title="{{ item.ml_name }}">
                {{ item.ml_name }}
            </a>
            {% assign menuLv2 = item.ml_id | get_sub %} 
            {% if menuLv2.size > 0 %}<!-- tamaño de menulv2 es mayor a 0 -->
                <ul><!-- menu nivel 2-->
                    {% for itemLv2 in menuLv2 %}
                    <li>
                        <!-- item nivel 2-->
                        <a href="{{ itemLv2.ml_link }}" title="{{ itemLv2.ml_name }}">
                            {{ itemLv2.ml_name }}
                        </a>
                        {% assign menuLv3 = itemLv2 | get_sub %}
                        {% if menuLv3.size > 0 %}<!-- tamaño de menulv3 es mayor a 0 -->
                            <ul><!-- menu nivel 3-->
                                {% for itemLv3 in menuLv3 %}
                                <li>
                                    <!-- item nivel 3-->
                                    <a href="{{ itemLv3.ml_link }}" title="{{ itemLv3.ml_name }}">
                                        {{ itemLv3.ml_name }}
                                    </a>
                                </li>
                                {% endfor %}
                            </ul>
                        {% endif %}
                    </li>
                    {% endfor %}
                </ul>
            {% endif %}
        </li> 
    {% endfor %}
 </ul>

Resultado

<ul>
    <li><!-- menu nivel 1-->
        <a href="/collection/camisetas" title="Camisetas">
            Camisetas
        </a>
    </li>
    <li><!-- menu nivel 1-->
        <a href="/collection/Pantalones" title="Pantalones">
            Pantalones
        </a>
        <ul><!-- menu nivel 2-->
            <li><!-- item nivel 2-->
                <a href="/collection/camisetas-de-hombre" title="Pantalones de Hombres">
                    Pantalones de Hombre
                </a>
            </li>
            <li><!-- item nivel 2-->
                <a href="/collection/camisetas-de-mujer" title="Pantalones de Mujer">
                    Pantalones de Mujer
                </a>
                <ul><!-- menu nivel 3-->
                    <li><!-- item nivel 3-->
                        <a href="/product/jeans" title="Jeans">Jeans</a>
                    </li>
                    <li><!-- item nivel 3-->
                        <a href="/product/tela" title="Tela">Tela</a>
                    </li>
                </ul>
            </li>
        </ul>
   </li> 
</ul>

Implementación Componente Menú

Para implementar el menú en cualquier componente o plantilla debes llamar de la siguiente forma

{{ 'Nombre del Menú' | get_menu: 'Nombre del Componente del menú' }}

Ejemplo:

{{ 'Menú Cabecera' | get_menu: 'Cabecera - Menu' }}

Ver también

⚠️ **GitHub.com Fallback** ⚠️