Paragraphs

Permite la creación de contenido estructurado utilizando componentes de párrafo reutilizables que pueden combinarse en páginas de contenido.

paragraphs
240,611 sites
434
drupal.org

Install

Drupal 11, 10 v8.x-1.19
composer require 'drupal/paragraphs:8.x-1.19'
Drupal 9 v8.x-1.17
composer require 'drupal/paragraphs:8.x-1.17'

Overview

El módulo Paragraphs proporciona un potente tipo de campo que permite a los usuarios crear componentes de contenido estructurados y reutilizables. En lugar de depender de un único editor WYSIWYG, los creadores de contenido pueden construir páginas agregando múltiples tipos de párrafo, cada uno con sus propios campos y configuraciones de visualización.

Los Paragraphs son ideales para páginas de destino, diseños complejos y cualquier contenido que se beneficie de un enfoque modular basado en componentes. Cada tipo de Paragraph es un bundle que puede contener cualquier campo de Drupal, dando a los constructores de sitios completa flexibilidad para definir estructuras de contenido.

El módulo se integra con el módulo Entity Reference Revisions para mantener el historial de revisiones y soporta contenido multilingüe a través del sistema de traducción de Drupal. También proporciona una interfaz de widget sofisticada con reordenamiento mediante arrastrar y soltar, funcionalidad de colapsar/expandir y características de duplicación.

Features

  • Crear tipos de Paragraph personalizados con cualquier combinación de campos de Drupal
  • Agregar múltiples Paragraphs a cualquier entidad usando el tipo de campo Entity Reference Revisions
  • Dos opciones de widget de campo: Stable (recomendado) con características completas y Legacy para compatibilidad hacia atrás
  • Reordenamiento de párrafos mediante arrastrar y soltar, incluyendo soporte para párrafos anidados
  • Sistema de plugins de comportamiento para agregar funcionalidad personalizada a los tipos de párrafo
  • Múltiples modos de agregar: Botón desplegable, Lista de selección, Botones o Formulario modal
  • Modos de edición configurables: Abierto, Cerrado o Cerrado con expansión anidada
  • Modos de visualización Resumen y Vista previa cuando los párrafos están colapsados
  • Función de duplicar párrafo para copiar rápidamente contenido existente
  • Función de convertir para transformar párrafos entre tipos compatibles
  • Acciones de Colapsar/Editar todo para gestionar múltiples párrafos eficientemente
  • Función de agregar arriba para insertar párrafos en posiciones específicas
  • Iconos por tipo de párrafo para identificación visual
  • Soporte completo de revisiones a través de la integración con Entity Reference Revisions
  • Soporte de traducción multilingüe de párrafos
  • Soporte de migración desde los módulos Paragraphs y Field Collection de Drupal 7
  • Control de visibilidad de párrafos no publicados

Use Cases

Constructor de páginas de destino

Crear páginas de destino diversas combinando tipos de párrafo como Banner Hero, Cuadrícula de características, Carrusel de testimonios, Llamada a la acción y Bloques de contenido. Los editores de contenido pueden construir diseños de página únicos sin intervención del desarrollador seleccionando y organizando diferentes tipos de párrafo.

Publicación de blog con medios enriquecidos

Construir tipos de contenido de artículo con párrafos para Secciones de texto, Galerías de imágenes, Videos incrustados, Citas destacadas y bloques de Contenido relacionado. Los autores pueden intercalar medios a lo largo de sus artículos en cualquier orden.

Exhibición de productos

Crear páginas de producto con párrafos para Especificaciones de producto, Destacados de características, Carruseles de imágenes, Reseñas de clientes y Productos relacionados. Cada sección puede tener su propio diseño y estilo.

Componentes de contenido reutilizables

Usar el submódulo Paragraphs Library para crear componentes reutilizables como bloques de dirección de empresa, texto de aviso legal o banners promocionales que pueden compartirse a través de múltiples páginas y actualizarse en un solo lugar.

Diseños de múltiples columnas

Crear tipos de párrafo que contengan campos de párrafo anidados (ej., un párrafo de Diseño de dos columnas que contenga párrafos de columna izquierda y derecha), permitiendo diseños anidados complejos con reordenamiento mediante arrastrar y soltar.

Listados de eventos

Construir contenido de eventos con párrafos para Detalles del evento, elementos de Horario/Agenda, Perfiles de ponentes, Información del lugar y formularios de Registro. Cada evento puede tener una combinación única de secciones de información.

Tips

  • Use el modo de edición 'Cerrado' con modo cerrado 'Resumen' para campos con muchos párrafos para mejorar el rendimiento y usabilidad del formulario
  • Configure un tipo de párrafo por defecto para pre-poblar nuevo contenido con tipos de párrafo comúnmente usados
  • Use iconos de tipo de párrafo para ayudar a los editores de contenido a identificar rápidamente los tipos de párrafo en el widget
  • Habilite la función 'Agregar arriba' cuando use el modo de agregar Formulario modal para posicionamiento preciso de párrafos
  • Considere usar el submódulo Paragraphs Library para contenido que necesita aparecer en múltiples páginas
  • Use plugins de comportamiento para agregar opciones de estilo consistentes (como colores de fondo o configuraciones de ancho) a través de tipos de párrafo
  • Configure modos de formulario de Field UI apropiados para párrafos para controlar qué campos aparecen en diferentes contextos
  • Use la configuración 'Umbral de modo cerrado' para mantener formularios cortos abiertos mientras colapsa los más largos
  • Habilite el submódulo Paragraphs Type Permissions cuando diferentes roles necesiten diferentes capacidades de creación de párrafos
  • Pruebe el contenido de párrafos con Content Translation para asegurar un flujo de trabajo multilingüe adecuado

Technical Details

Admin Pages 4
Tipos de Paragraph /admin/structure/paragraphs_type

Lista todos los tipos de Paragraph disponibles con opciones para agregar, editar, eliminar y gestionar campos para cada tipo. Cada tipo de Paragraph representa un componente de contenido reutilizable con su propio conjunto de campos.

Agregar tipo de Paragraph /admin/structure/paragraphs_type/add

Formulario para crear un nuevo tipo de Paragraph con etiqueta, nombre de máquina, icono, descripción y configuración de plugins de comportamiento.

Editar tipo de Paragraph /admin/structure/paragraphs_type/{paragraphs_type}

Editar la configuración de un tipo de Paragraph existente incluyendo etiqueta, icono, descripción y plugins de comportamiento.

Configuración de Paragraphs /admin/config/content/paragraphs

Ajustes de configuración global para el módulo Paragraphs.

Permissions 4
Administrar tipos de Paragraphs

Permitir definir los tipos de Paragraphs existentes y sus campos

Editar configuración de plugins de comportamiento

Los usuarios con este permiso pueden editar la configuración de plugins de comportamiento en instancias de comportamiento de Paragraphs

Ver paragraphs no publicados

Los usuarios con este permiso pueden ver paragraphs que no están publicados

Administrar configuración de Paragraphs

Administrar la configuración de Paragraphs

Hooks 3
hook_paragraphs_behavior_info_alter

Altera la información proporcionada en las anotaciones de plugins ParagraphsBehavior. Permite a los módulos modificar las definiciones de plugins de comportamiento.

hook_paragraphs_widget_actions_alter

Altera las acciones disponibles en el widget de Paragraphs. Permite agregar botones personalizados y acciones desplegables para elementos de párrafo.

hook_paragraphs_conversion_alter

Altera los paragraphs después de la conversión entre tipos. Se ejecuta una vez por cada entidad de párrafo convertida para modificaciones post-conversión.

Troubleshooting 5
El campo Paragraphs está marcado como traducible causando pérdida de datos

Nunca marque el campo Entity Reference Revisions que referencia párrafos como traducible. En su lugar, marque los campos individuales dentro de los tipos de párrafo como traducibles. Vea las instrucciones de configuración multilingüe en README.txt.

Arrastrar y soltar no funciona

Asegúrese de estar usando Drupal 8.8.0+ que incluye la biblioteca Sortable requerida en el core. La función de arrastrar y soltar requiere el widget Stable (no Legacy).

Los plugins de comportamiento no aparecen en el formulario de tipo de párrafo

Los plugins de comportamiento solo aparecen si son aplicables al tipo de párrafo. Verifique que el método isApplicable() del plugin devuelva true para su tipo de párrafo.

Párrafos huérfanos apareciendo en la base de datos

Los párrafos normalmente se eliminan cuando su entidad padre se elimina. Los párrafos huérfanos pueden ocurrir por guardados interrumpidos o errores. Use módulos de limpieza de entidades o consultas de base de datos para identificar y eliminar huérfanos.

Los ajustes del widget no se guardan en la configuración del campo

Asegúrese de que el tipo de widget esté configurado como 'Paragraphs (stable)' o 'Paragraphs Legacy', no otros widgets de referencia de entidad que no son compatibles con paragraphs.

Security Notes 4
  • El permiso 'administer paragraphs types' otorga acceso significativo y solo debe darse a administradores de confianza
  • El permiso 'view unpublished paragraphs' puede exponer contenido en borrador; asígnelo cuidadosamente
  • Al usar Paragraphs Library, considere que los elementos de biblioteca son compartidos - los cambios afectan todas las instancias
  • El acceso a párrafos hereda de la entidad padre; asegúrese de que los controles de acceso de la entidad padre sean apropiados