Tip rápido: Menús dinámicos con Menu views

June 18, 2021

Share

Table of contents

Quick Access

En ciertas ocasiones, nos encontramos con menús en nuestros sitios que sus ítems cumplen cierto patrón, como por ejemplo todos los nodos de un tipo de contenido o términos de un vocabulario. El modo convencional de crear estos items es de forma manual bajo la administración de menús. El problema con esto es que cada vez que creamos un ítem nuevo que cumple este criterio tenemos que recordar ir a nuestros menús y actualizarlos. Si sabemos que estos ítems cumplen un patrón, ¿Por qué no automatizarlo? Con menos intervención humana, menos posibilidad al error. Existe un módulo que nos ayuda a realizar esta tarea, se llama [Menu views](https://drupal.org/project/menu_views). Este pequeño módulo nos permite crear ítems de menú en base a el resultado de una vista que básicamente significa de todo lo que views soporte. Este módulo funciona bien en conjunto con módulos como [Menu Block](https://drupal.org/project/menu_block), [Nice Menus](https://drupal.org/project/nice_menus) y [Superfish](https://drupal.org/project/superfish). Todo lo que tenemos que hacer es descargar el módulo y habilitarlo: [prism:bash] drush dl menu_views && drush en -y menu_views [/prism:bash] Luego de esto, una vez tengamos lista la vista que queremos desplegar en nuestro menú, nos vamos a él y agregamos un nuevo ítem como si fuera un enlace cualquiera. ![Administracion de menu item](https://www.rootstack.comhttps://cms.rootstack.com/sites/default/files/blog/img/menu_views-link.png) Podemos observar que ahora vemos una nueva opción en nuestro formulario de creación donde dice "Menu item type" que por defecto tiene seleccionado "Link" y seleccionamos "View", entonces podremos seleccionar la vista que queremos desplegar en el ítem. ![Administracion de menu item con views menu](https://www.rootstack.comhttps://cms.rootstack.com/sites/default/files/blog/img/menu_views-view.png) Guardamos y con esto ya tenemos nuestro menú que automáticamente se actualiza.