Cómo usar el módulo Extras de elementos de menú para Drupal 8

Publicado: 2022-02-16

Los mega menús ya no son una tendencia de diseño, sino una parte esencial de la mayoría de los sitios web relacionados con noticias o comercio electrónico.

El módulo Extras de elementos de menú para Drupal 8 mejora el sistema de menú predeterminado en Drupal, al permitir que el creador del sitio agregue campos a los elementos de menú. De esa manera, es posible crear un mega menú con un par de pasos simples.

Siga para aprender a usar este módulo. ¡Empecemos!

Paso #1: Instale los Módulos Requeridos

Además del módulo Extras de elementos del menú, deberá instalar Viewfield. Viewfield proporciona un campo que contiene una referencia a una vista y la representa cada vez que se muestra la entidad que contiene el campo.

  • Abra la aplicación de terminal de su PC.
  • Tipo :
    • el compositor requiere drupal/viewfield
    • el compositor requiere drupal/menu_item_extras

200414 elemento de menú extras 001200414 elemento de menú extras 001

Habilite ambos módulos después de la descarga.

  • Haga clic en Extender.
  • Compruebe ambos módulos.
  • Haga clic en Instalar.

200414 elemento de menú extras 003


Paso #2: Cree un Sistema de Taxonomía

Quizás la palabra “sistema” no sea muy adecuada ya que solo crearemos un vocabulario con diez términos asociados. Sin embargo, este ejemplo explicará los conceptos básicos, para que pueda trabajar con sistemas de taxonomía más complicados en el futuro.

  • Haga clic en Estructura > Taxonomía > Agregar vocabulario.
  • Ingrese el nombre "Temas" y haga clic en Guardar.
  • Haga clic en Agregar término y agregue todos los términos detallados a continuación uno por uno.
    • Temas
      • D8
      • Symfony
      • WP
      • Magento
      • CSS
      • HTML
      • JS
      • PHP
      • Pitón
      • DevOps

200414 elemento de menú extras 004


Paso #3: Crea los Tipos de Contenido

A los efectos de este tutorial, vamos a utilizar 2 tipos de contenido con los siguientes campos:

  • Servicios
    • Imagen de servicio / Imagen / Número permitido de valores: 1
    • Texto de introducción / Texto (formateado) / Número permitido de valores: 1
    • Descripción / Campo predeterminado

200414 elemento de menú extras 005

  • Blog
    • Categoría / Término de taxonomía / Número permitido de valores: ilimitado
    • Descripción / Campo predeterminado

200414 elemento de menú extras 006

Asegúrese de seleccionar el tipo de referencia (temas) al crear el campo de taxonomía.

200414 elemento de menú extras 007


Paso #4: Crear contenido

Vamos a crear 3 nodos de tipo Servicio:

  • Tutoriales
  • Vídeos
  • Libros

Cada uno de estos nodos estará asociado a un elemento de segundo nivel en el mega menú. Por otro lado, vamos a crear unos 10 nodos de tipo Blog con distintos términos asociados. Asegúrate de incluir 2 de los términos (ej.: D8, WP) con más frecuencia que los demás.

200414 elemento de menú extras 008

La pantalla de contenido debería verse al final de este proceso más o menos como la imagen de abajo.

200414 elemento de menú extras 009


Paso #5: Crea los Elementos del Menú

El primer nivel del menú principal tendrá los siguientes elementos de menú:

  • Casa
  • Acerca de
  • Recursos
  • Contacto

Cada uno de los elementos del menú tendrá un campo adicional (extra). Este campo se establecerá en el segundo nivel del menú, es decir, en cada uno de los elementos de la tarjeta del mega menú. Este campo nos permitirá presentar cada uno de los bloques de vista.

  • Haga clic en Estructura > Menús.
  • Haga clic en el menú Editar para editar la navegación principal.

200414 elemento de menú extras 010

  • Haga clic en Agregar enlace 3 veces para agregar los elementos de menú de primer nivel que faltan.
  • Haga clic en Guardar cada vez que ingrese un nombre de elemento de menú.

Use la etiqueta especial para mostrar solo el texto del enlace.

200414 elemento de menú extras 011

200414 elemento de menú extras 012

Una vez que haya creado y reorganizado los enlaces de su menú,

  • Haga clic en Administrar campos > Agregar campo para agregar un campo a los elementos del menú.
  • Seleccione un campo de tipo Viewfield.
  • Dale un nombre y una etiqueta adecuados.
  • Haga clic en Guardar y continuar.

200414 elemento de menú extras 013

  • Establezca el Número permitido de valores en Ilimitado.
  • Haga clic en Guardar configuración de campo

200414 elemento de menú extras 014

Tendrá la opción de vincular una vista predeterminada a este campo en particular. Deje estos campos vacíos.

  • Desplácese hacia abajo y haga clic en Guardar configuración
  • Haz clic en Administrar pantalla.

200414 elemento de menú extras 015

  • Oculte la etiqueta de la tarjeta de menú.
  • Haga clic en Guardar.

Paso #6: Crea las Vistas

  • Haga clic en Estructura > Vistas > Agregar vista
  • Mostrar Contenido de tipo Servicios.
  • Cree un bloque con una lista de campos sin formato.
  • Elija mostrar 3 elementos por bloque.
  • Haga clic en Guardar y editar.

200414 elemento de menú extras 016

  • Agregue el campo Imagen del servicio
  • Establezca el estilo de imagen en Miniatura y vincule la imagen al Contenido.
  • Haga clic en Aplicar

200414 elemento de menú extras 017

  • Agregue también el campo de texto de introducción.
  • Reorganizar los campos.
  • Haga clic en Guardar.

200414 elemento de menú extras 018

  • Haga clic en Estructura > Vistas > Agregar vista
  • Mostrar Contenido de tipo Blog.
  • Cree un bloque con una lista de campos sin formato.
  • Elija mostrar 1 elemento por bloque.
  • Haga clic en Guardar y editar.

Cómo usar el módulo Extras de elementos de menú para Drupal 8

  • Agregue el campo Categoría.
  • Haga clic en Agregar y configurar campos.
  • Haga clic en la configuración de campo Múltiple.
  • Seleccione Lista desordenada.
  • Establezca el número de valores para mostrar en 3.
  • Haga clic en Aplicar.

200414 elemento de menú extras 020

  • Eliminar el criterio de clasificación
  • Haga clic en Aplicar.
  • Haga clic en Guardar para guardar la vista.

Paso #7: Agregue los bloques de vista a los elementos del menú

  • Haga clic en Estructura > Menús
  • Edite la navegación principal.
  • Edite el elemento de menú Recursos.
  • Agrega los 2 bloques que creaste en el paso #5.
  • Haga clic en Guardar.

200414 elemento de menú extras 021


Paso #8: Los estilos CSS

No voy a explicar este código en detalle ya que está fuera del alcance de este tutorial. Sin embargo, puede investigar más sobre Drupal Views y CSS Grid en este artículo. Si quieres practicar más con los mega menús, échale también un vistazo a este artículo.

 #block-bartik-main-menu a,
#block-bartik-main-menu li span {
background: transparent;
text-shadow: unset;
color: whitesmoke;
}

#block-bartik-main-menu .menu-level-0 {
display: grid;
grid-template-columns: repeat(4, 1fr);
}

#block-bartik-main-menu .field--name-field-menu-card .field__items {
display: flex;
}

#block-bartik-main-menu .menu-dropdown-0 {
position: absolute;
left: 0;
top: 166px;
width: 100%;
z-index: 10;
}

#block-bartik-main-menu a,
#block-bartik-main-menu li span {
background: transparent;
text-shadow: unset;
color: whitesmoke;
}

#block-bartik-main-menu .menu-item {
display: grid;
align-content: center;
justify-content: center;
}

#block-bartik-main-menu .menu-level-0 {
display: grid;
grid-template-columns: repeat(4, 1fr);
}

#block-bartik-main-menu .menu-dropdown-0 {
position: absolute;
left: 0;
width: 100%;
padding-top: 16px;
background-color: rgba(141,139,132, 0.9);
}

.view-tutorials .view-content {
display: grid;
grid-template-columns: repeat(3, 1fr);
}

.view-tutorials .views-row {
display: grid;
justify-items: center;
}

.view-tutorials .views-row span > a {
font-size: 1.3rem
}

.view-tutorials .views-row .views-field-field-intro-text {
font-size: 1rem;
}
ABRIR EN EMERGENTE
 #block-bartik-main-menu a,
#block-bartik-main-menu li span {
background: transparent;
text-shadow: unset;
color: whitesmoke;
}

#block-bartik-main-menu .menu-level-0 {
display: grid;
grid-template-columns: repeat(4, 1fr);
}

#block-bartik-main-menu .field--name-field-menu-card .field__items {
display: flex;
}

#block-bartik-main-menu .menu-dropdown-0 {
position: absolute;
left: 0;
top: 166px;
width: 100%;
z-index: 10;
}

#block-bartik-main-menu a,
#block-bartik-main-menu li span {
background: transparent;
text-shadow: unset;
color: whitesmoke;
}

#block-bartik-main-menu .menu-item {
display: grid;
align-content: center;
justify-content: center;
}

#block-bartik-main-menu .menu-level-0 {
display: grid;
grid-template-columns: repeat(4, 1fr);
}

#block-bartik-main-menu .menu-dropdown-0 {
position: absolute;
left: 0;
width: 100%;
padding-top: 16px;
background-color: rgba(141,139,132, 0.9);
}

.view-tutorials .view-content {
display: grid;
grid-template-columns: repeat(3, 1fr);
}

.view-tutorials .views-row {
display: grid;
justify-items: center;
}

.view-tutorials .views-row span > a {
font-size: 1.3rem
}

.view-tutorials .views-row .views-field-field-intro-text {
font-size: 1rem;
}

200414 elemento de menú extras 022

Espero que les haya gustado este tutorial. ¡Gracias por leer!