Imprimir valores desde un Nodo dentro una Twig Paragraphs
Cómo imprimir valores de un Nodo que contiene campos del tipo Paragraphs, usando Twig.
Cómo imprimir valores de un Nodo que contiene campos del tipo Paragraphs, usando Twig.
Para extraer la url de un campo media e imprimirlo en tu plantilla Twig, tanto si el campo está en el primer nivel del Paragraphs o dentro de un Paragraphs, que está anidado en otro.
Los ejemplos se puedes aplicara contenidos, productos o paragraphs en Drupal.
Si estás tratando de implementar algún carrusel para Drupal 10, siguiendo ejemplos que haz encontrado en internet, esto te ayudará a corregirlo.
En el curso Landing Page | Creación y configuración con Drupal 9, aprendimos a configurar desde cero, un tipo de contenido, llamado Landing Page, cuya estructura principal estaba formada paragraphs, permitiendo así una mayor flexibilidad sobre el orden de todos sus componentes.
También pudimos comprobar, que es posible añadir más funcionalidades, que modifiquen específicamente a cada Paragraphs, como la de permitir configurar un color, gracias al módulo Color Field; o incluir un formulario dentro de un paragraphs, gracias a los campos referenciados de Drupal.
En el caso de nuestro ejemplo, resulta fácil la manipulación de los componentes Paragraphs, desde la interfaz del usuario, ya que no representan una gran cantidad; pero, ¿qué ocurre si en lugar de tener unos pocos Paragraphs, queremos ofrecer al usuario un mayor abanico de posiblidades?
Si exploramos el fomulario de creación de nuestra Landing Page, podremos comprobar a qué nos referimos; ya que la interfaz del usuario de Drupal, añade cada nuevo paragraphs justo debajo del anterior, y, a pesar de que podemos plegar u ocultar cada uno de los paragraphs, durante el proceso de edición, no contamos con una opción gráfica "Verdaderamente amigable", para usuarios con conocimientos básicos sobre edición de contenidos.
Para facilitar el proceso de edición de contenidos, cuando tenemos un gran número de paragraphs, disponibles para el usuario editor, contamos con otro módulo llamado Layout Paragraphs, cuyo objetivo es, precisamente, permitirnos añadir, editar, arrastrar o eliminar los paragraphs dentro de nuestros contenidos.
Para facilitar el proceso de edición de contenidos, cuando tenemos un gran número de paragraphs, disponibles para el usuario editor, contamos con otro módulo llamado Layout Paragraphs, cuyo objetivo es, precisamente, permitirnos añadir, editar, arrastrar o eliminar los paragraphs dentro de nuestros contenidos.
Para descargar y activar cualquier módulo de Drupal tienes varias opciones:
Descarga:
1.- La forma recomendada a partir de Drupal 8, es utilizando el gestor de paquetes Composer, ejecutando en tu consola el comando:
composer require drupal/layout_paragraphs
2.- Descargándolo manualmente el módulo desde la página oficial del Layout Paragraphs y una vez descargado y colocado en carpeta "modules/contrib", si haz descargado todos tus módulos manualmente, deberías crear la carpeta "contrib", para que puedas diferenciar entre tus módulos personalizados y los que están disponibles directamente en la Página oficial de Drupal.
Activación:
1.- Utilizando la herramienta de consola Drush, la opción "-y" activará todos los sub-modulos automáticamente
drush en layout_paragraphs -y
2.- Desde la interfaz de usuario de Drupal, en la url "/admin/modules", y luego marcando el check junto al nombre de tu módulo y haciendo clic en el botón guardar que aparecer al final de la página.
Una vez descargado y activado el módulo, el siguiente paso será configurar el campo o los campos, del tipo paragraphs, para que podamos ver el cambio que nos ofrece este módulo, a nivel de la interfaz de usuario, facilitando la manipulación de los paragrphs.
En nuestro ejercicio con la Landing Page, creamos un campo tipo paragraphs, en el que añadimos cada uno de los Bloques o Paragraphs que deberían estar disponibles para que el usarios los añadiera, editara o modificara, según sus necesidades.
Por lo tanto, tendremos que acceder a las pestañas Administrar la visualización del formulario y luego en la de Gestionar Presentación, buscar el campo al que activaremos la funcionalidad del módulo Layout Paragrarphs y la seleccionaremos dentro de las opciones disponibles. Por último guardaremos los cambios y borraremos la cache de Drupal, para ver el resultado.
Una vez guardados los cambios en la configuración de los campos, si volvemos a editar nuestro contenido, podremos apreciar un cambio considerable en la forma de gestionar los paragraphs.
Entre los cambios están:
Uno de los objetivos principales de este módulo, es ofrecer la posibilidad de combinar el uso de Pagragraphs, con el Layout Builder integrado en Drupal, a partir de Drupal 8, con esta combinación, podremos preconfigurar secciones de una o varias columnas, para poder insertar en ellas, todos los paragraphs que necesitemos.
La sección, no es más que otro componente del tipo Paragraphs, que tendremos que añadir al listado principal, si queremos que funcione.
La particularidad de una SECCIÓN, es que tendremos que marcar la opción de Layout Paragraphs, en la parte inferior, para que pueda ser utilizada con ese fin.
Al configurar este nuevo paragraphs, al que llamaremos SECTION, o como te apetezca, nos aparecerá dentro de las opciones disponibles, cuando presionamos el icono de suma (+), que aparecer en la parte superior e inferior de nuestra nueva interfaz de usuario, para la edición de los paragraphs.
La Preprocess Function sirve para modificar los comportamientos por defecto de Drupal, en este caso vamos a acceder al formulario por defecto y lo haremos disponible para colocarlo dentro de un nodo y posteriormente dentro de un paragarphs, así podremos imprimirlo en cualquier lugar y posición dentro de la web.
Si quieres aprender más sobre las preprocess functions