Views | Vistas con parámetros en Drupal 9

Video de Youtube
URL de Video remoto

Si no ves el video, puedes refrescar el navegador, presionando (Ctrl+Shift+R | Ctrl+F5 o Shift+F5), o abrirlo directamente desde el Canal de Youtube... HAZ CLIC AQUI

     Como ya hemos mencionado en anteriores ocasiones, uno de los módulos más potentes y funcionales de Drupal, es el encargado de gestionar las vistas, conocido cómo Views; que nos sirve para crear, entre otras cosas, todo tipo de consultas a la base de datos, utilizando la interfaz gráfica, sin la necesidad de tener conocimientos avanzados, sobre Mysql, bases de datos o ejecución de código para este tipo de resultados.

     Una de las opciones más empleadas al momento de trabajar con vistas, es la implementación o configuración de filtros, si te interesa crear una vista en la que muestres contenidos relacionados con un vocabulario o término específico, te invito a que revises el artículo en el que explico Cómo crear Vistas con filtros en Drupal 9, donde encontrarás varios ejemplos, paso a paso, además del video explicativo para que puedas entender y aplicar fácilmente los filtros más básicos de las vistas.

     En esta ocasión, vamos a conocer otras opciones más avanzadas, disponibles también desde la interfaz de Views, para que podamos crear vistas dinámicamente, utilizando el paso de parámetros desde la url, con la ayuda de los "Filtros Contextuales", a los que podremos acceder desde la parte derecha superior de la pantalla de gestión de vistas una vez estemos dentro de una de ellas.

Requisitos:

 

Cómo pasar parámetros en las vistas con Drupal 9

     Paso 1 Creación de contenidos:

          Para este ejercicio vamos a necesitar la creación de dos tipos de contenido "Artista" y "Canción", además necesitaremos crear un vocabulario o "Taxonomía", con el nombre "Género musical". 

          El objetivo es crear varios artistas, con sus respectivas canciones añadidas y en cada canción, a su vez, podremos ver el género musical al que pertenece y el año en que fue publicada.

          En el caso del tipo de contenido "Artista", tendrás que añadir dos campos, "Fotografía artista", que será un campo del tipo "Imagen" y luego tendrás que añadir un campo del tipo "Referencia de entidad", para poder conectar a cada artista con sus respectivas "Canciones", que son nuestro segundo tipo de contenido.

Vistas Drupal | www.drupaladicto.com - Consultor especializado en drupal y symfony

Vistas Drupal | www.drupaladicto.com - Consultor especializado en drupal y symfony

          En el tipo de contenido "Canción", tendrás que añadir el campo "Año", del tipo "Texto (sin formato)", para rellenar con el año del lanzamiento de la canción y posteriormente, tendrás que añadir un campo del tipo "Referencia de entidad", conectado al vocabulario o "Taxonomía" llamado "Género musical"

Vistas Drupal | www.drupaladicto.com - Consultor especializado en drupal y symfony

Vistas Drupal | www.drupaladicto.com - Consultor especializado en drupal y symfony

Vistas Drupal | www.drupaladicto.com - Consultor especializado en drupal y symfony

Paso 2 Creación vista Artistas del Tipo Página:

     La primera de las vistas que vamos a crear será del tipo página y en ella mostraremos las imágenes de los artistas con el nombre de cada uno. Luego al hacer clic sobre la imagen o el nombre del artista, accederemos a la "Ficha", donde mostraremos la información relacionada con sus canciones.

     Ya sabemos que para crear vistas, tendremos que acceder en el menú superior a "Estructura/Vistas/Agregar Vista", una vez estemos en la pantalla de creación de las vistas, seleccionaremos el tipo de contenido "artistas" y crearemos una vista del tipo página, dejando todos los parámetros por defecto.

     Una vez dentro de la vista, realizaremos algunas modificaciones, como el cambio en los títulos de administración y añadir un enlace para poder acceder desde el menú principal.

Vistas Drupal | www.drupaladicto.com - Consultor especializado en drupal y symfony

     Dentro de esta vista, estamos trabajando con "Contenidos", en lugar de "Campos", por lo que si queremos modificar la forma en que se presenta la información, dentro de esta vista, tendremos que hacer las modificaciones en el "Modo de vista", dentro del contenido "Artista"; específicamente, modificaremos el Modo de vista "Resumen".

     Por eso nos iremos al menú ·Estructura/Tipo de Contenido/ Artista/ Gestionar Presentación", y una vez allí, haremos clic en la pestaña correspondiente al Modo de vista "Resumen", donde podremos desactivar y modificar todos los campos que hagan falta para conseguir el resultado esperado.

Vistas Drupal | www.drupaladicto.com - Consultor especializado en drupal y symfony

Vistas Drupal | www.drupaladicto.com - Consultor especializado en drupal y symfony

Paso 3 Creación Vista Bloque usando Filtros Contextuales

     La siguiente parte del ejercicio, nos lleva a crear una Vista del tipo Bloque, en la que vamos a mostrar el listado de canciones, con la información adicional, sobre el año de publicación de la canción y el Género al cual pertenece.

     Lo primero que haremos es volver a la pantalla de creación de las vistas y, esta vez, añadiremos una del Tipo Bloque, en lugar del Tipo página que utilizamos en la vista anterior.

     Cómo queremos mostrar las canciones de los artistas y éstas son un campo referenciado, dentro del tipo de contenido "Artista", tendremos que seleccionarlo como tipo de contenido, para poder acceder luego a sus canciones.

Vistas Drupal | www.drupaladicto.com - Consultor especializado en drupal y symfony

     Una vez dentro de la pantalla de configuración de la vista, realizaremos unas cuantas modificaciones, como el "Nombre del Bloque", para poder facilitarnos su activación posteriormente.

Vistas Drupal | www.drupaladicto.com - Consultor especializado en drupal y symfony

     Si guardamos la vista, y la activamos tal como la tenemos hasta este momento, yendo a "Estructura/Administrar Bloques", veremos que, al volver hacia la ficha del artista, se nos muestran todas las canciones, pero sin diferenciar de qué artista se trata. Por esta razón, tendremos que editar la vista y añadir un tipo de filtrado específico con los llamados "Filtros Contextuales", que nos permitirán, en este caso, filtrar el contenido, usando como referencia el "Id" o identificador del contenido, para poder imprimir los campos que están específicamente relacionados con él.

Vistas Drupal | www.drupaladicto.com - Consultor especializado en drupal y symfony

Paso 4 Correcciones en la ficha del artista:

     El último paso que nos queda, para concluir con el ejercicio, es modificar el "Modo de Vista Default", que es el que se nos muestra al entrar en cualquier contenido, en este caso, cuando accedemos a la "Ficha del artista", así que realizaremos los cambios parecidos a los del Modo de Vista Resumen, para que sólo se muestre la imagen y el nombre de cada artista.

Vistas Drupal | www.drupaladicto.com - Consultor especializado en drupal y symfony

Vistas Drupal | www.drupaladicto.com - Consultor especializado en drupal y symfony

Otras modificaciones extras:

     Aunque no lo cuento en el video, porque ya sabes cómo modificar el "Modo de Vista", en cualquier tipo de contenido, en el caso de las canciones, para que tu ejercicio quede exactamente igual al mío, he modificado el "Modo de Vista Default", del tipo de contenido "Canción". En la pestaña editar, del contenido "Canción", desactivé la pestaña que publica la fecha de publicación y creación del tipo de contenido.

Vistas Drupal | www.drupaladicto.com - Consultor especializado en drupal y symfony

Vistas Drupal | www.drupaladicto.com - Consultor especializado en drupal y symfony