Webform Content Creator

Crea y sincroniza automáticamente entidades de contenido basadas en envíos de webform con mapeos de campos configurables.

webform_content_creator
3,099 sites
75
drupal.org

Install

Drupal 11, 10, 9, 8 v4.0.13
composer require 'drupal/webform_content_creator:^4.0'

Overview

Webform Content Creator es un potente módulo de Drupal que automatiza la creación de entidades de contenido cuando se envían webforms. Proporciona una interfaz de configuración flexible que permite a los administradores definir mapeos entre los valores de envío del webform y los campos de las entidades de contenido.

El módulo soporta cualquier tipo de entidad de contenido en Drupal (nodes, entidades personalizadas, etc.) y proporciona capacidades de sincronización bidireccional. Cuando se edita o elimina un envío de webform, la entidad de contenido correspondiente puede actualizarse o eliminarse automáticamente. El módulo también se integra con el módulo Webform Encrypt para manejar valores de campos encriptados de forma transparente.

Los mapeos de campos pueden usar tanto valores directos de campos de webform como texto personalizado con sustitución de tokens, dando a los administradores flexibilidad completa en cómo se genera el contenido a partir de los envíos de formularios.

Features

  • Creación automática de entidades de contenido activada por envíos de webform
  • Soporte para cualquier tipo de entidad de contenido de Drupal (nodes, entidades personalizadas, etc.)
  • Mapeos de campos configurables entre elementos de webform y campos de entidad
  • Valores de texto personalizados con soporte de sustitución de tokens (tokens de webform_submission)
  • Sincronización bidireccional: el contenido se actualiza cuando se editan los envíos de webform
  • Eliminación automática de contenido cuando se eliminan los envíos de webform asociados
  • Integración con el módulo Webform Encrypt para descifrado de valores de campos encriptados
  • Truncamiento automático de valores de campo cuando se excede la longitud máxima (con registro)
  • Conversión y formateo de tipos de campo de fecha/datetime
  • Validación de campos de referencia a entidad
  • Organización por páginas de asistente de elementos de webform en la interfaz de mapeo
  • Selección de tipo de entidad y bundle potenciada por AJAX
  • Limpieza automática: las configuraciones se eliminan cuando se eliminan los webforms o tipos de entidad referenciados

Use Cases

Sistema de Generación de Leads

Crear un webform de formulario de contacto y generar automáticamente entidades de contenido Lead cuando los visitantes envían el formulario. Mapear campos de nombre, email, teléfono y mensaje a los campos de contenido correspondientes. Usar la función de sincronización para permitir al personal de ventas actualizar leads mediante ediciones de envíos de webform.

Registro de Eventos

Construir un webform de registro de eventos y crear automáticamente entidades de contenido Asistente. Mapear detalles del registrante, preferencias de sesión y requerimientos dietéticos. Habilitar la sincronización de eliminación para que los registros cancelados eliminen automáticamente el registro del asistente.

Sistema de Tickets de Soporte

Crear un webform de solicitud de soporte que genere entidades de contenido Ticket. Usar texto personalizado con tokens para generar títulos de tickets estructurados como '[webform_submission:values:category] - [webform_submission:values:subject]'. Habilitar la sincronización de edición para que los usuarios puedan actualizar sus tickets a través del webform.

Procesamiento de Solicitudes

Construir un webform de solicitud de empleo que cree entidades de contenido Solicitud. Mapear información del solicitante, cargas de currículum y preferencias de puesto. Usar la integración de encriptación para manejar datos personales sensibles de forma segura.

Flujo de Trabajo de Envío de Contenido

Permitir a usuarios autenticados enviar artículos a través de un webform, creando automáticamente entidades de contenido Artículo en estado borrador. Mapear el campo de cuerpo usando tokens y establecer el autor usando el token de usuario del envío.

Recolección de Respuestas de Encuestas

Crear webforms de encuesta que generen entidades de contenido Respuesta para cada envío. Mapear respuestas de encuesta a campos personalizados para reportes y análisis. Usar tokens de número de serie para crear identificadores de respuesta únicos.

Tips

  • Siempre mapear campos de contenido requeridos para evitar fallos de creación
  • Usar el navegador de Token para descubrir tokens de webform_submission disponibles para texto personalizado
  • Crear un campo dedicado en su tipo de contenido para almacenar el ID de envío cuando use sincronización
  • Probar primero con envíos de borrador - el contenido solo se crea cuando el envío está finalizado
  • Considerar usar el token de número de serie para títulos de contenido únicos: [webform_submission:serial]
  • Para mapeos de campos complejos, usar texto personalizado con múltiples tokens combinados
  • Al cambiar webform, tipo de entidad o bundle en una configuración, todos los mapeos de campos se restablecen - exportar su configuración primero
  • El módulo registra errores en el log de base de datos de Drupal (dblog) - revisar los mensajes de registro recientes al solucionar problemas

Technical Details

Admin Pages 5
Webform Content Creator /admin/config/webform_content_creator

Página principal de configuración que lista todas las configuraciones de Webform Content Creator. Muestra una tabla con el título de cada configuración (con nombre de máquina), webform asociado, tipo de entidad de destino y bundle. Proporciona operaciones para editar, eliminar o gestionar mapeos de campos para cada configuración.

Añadir entidad Webform Content Creator /admin/config/webform_content_creator/add

Formulario para crear una nueva configuración de Webform Content Creator. Define la relación entre un webform y un tipo de entidad de contenido de destino.

Editar entidad Webform Content Creator /admin/config/webform_content_creator/{webform_content_creator}

Editar una configuración existente de Webform Content Creator. Nota: Cambiar el webform, tipo de entidad o bundle restablecerá todos los mapeos de campos.

Gestionar campos /admin/config/webform_content_creator/manage/{webform_content_creator}/fields

Configurar mapeos de campos entre valores de envío de webform y campos de entidad de contenido. Cada fila representa un campo de entidad de contenido que puede mapearse a un elemento de webform o texto personalizado con tokens.

Eliminar entidad Webform Content Creator /admin/config/webform_content_creator/{webform_content_creator}/delete

Formulario de confirmación para eliminar una configuración de Webform Content Creator.

Permissions 1
Acceder a las configuraciones de Webform Content Creator

Permite a los usuarios ver, crear, editar y eliminar configuraciones de Webform Content Creator. Los usuarios con este permiso pueden acceder a la interfaz de administración en /admin/config/webform_content_creator.

Hooks 5
hook_webform_submission_insert

Se activa cuando se crea un envío de webform que no es borrador. Carga todas las configuraciones de Webform Content Creator y crea entidades de contenido para los webforms coincidentes.

hook_webform_submission_update

Se activa cuando se actualiza un envío de webform. Si el original era un borrador y la actualización no lo es, crea nuevo contenido. Si ambos no son borradores y la sincronización está habilitada, actualiza el contenido existente.

hook_webform_submission_delete

Se activa cuando se elimina un envío de webform. Si la sincronización de eliminación está habilitada, elimina la entidad de contenido correspondiente.

hook_entity_type_delete

Se activa cuando se elimina un tipo de entidad (tipo de contenido). Elimina las configuraciones de Webform Content Creator que referencian el tipo de entidad eliminado.

hook_webform_delete

Se activa cuando se elimina un webform. Elimina todas las configuraciones de Webform Content Creator que referencian el webform eliminado.

Troubleshooting 7
El contenido no se crea cuando se envía el webform

Verificar que: 1) El envío del webform no sea un borrador, 2) La configuración de Webform Content Creator exista y coincida con el ID del webform, 3) Los campos de contenido requeridos estén mapeados, 4) El tipo de entidad y bundle de destino aún existan. Revisar los mensajes de registro recientes para errores.

La validación de mapeo de campos muestra error de 'Tipo incompatible'

El tipo de campo del webform debe ser compatible con el tipo de campo de contenido. Los campos de email solo pueden mapearse a campos de contenido de email. Para campos de texto, asegurarse de mapear a tipos de campo text/string. Considerar usar texto personalizado con tokens como alternativa.

La sincronización no funciona (el contenido no se actualiza)

Asegurar: 1) La casilla 'Sincronizar en edición' esté habilitada en la configuración, 2) El sync_content_field esté especificado, 3) Un campo con ese nombre de máquina exista en el tipo de contenido, 4) El campo de sincronización esté mapeado a la propiedad ID de Envío en Gestionar Campos.

Contenido eliminado inesperadamente

Verificar si 'Sincronizar en eliminación' está habilitado. Esto eliminará el contenido cuando se elimine el envío de webform asociado. Deshabilitar esta opción si desea preservar el contenido de forma independiente.

Los valores encriptados aparecen como texto ilegible

Habilitar 'Descifrar valores' en la configuración y seleccionar el perfil de encriptación correcto. Asegurar que el módulo Webform Encrypt esté instalado y configurado correctamente con el mismo perfil de encriptación usado por el webform.

Los valores de campo están truncados

Este es el comportamiento esperado cuando el campo de contenido tiene una configuración de max_length y el valor lo excede. Revisar los mensajes de registro recientes para avisos sobre truncamiento. Considerar aumentar la longitud máxima del campo de contenido o usar un tipo de campo de texto largo.

Configuración eliminada inesperadamente

Webform Content Creator elimina automáticamente las configuraciones cuando se elimina el webform o tipo de entidad/bundle referenciado. Esto es por diseño para prevenir configuraciones huérfanas.

Security Notes 6
  • El módulo requiere el permiso 'access webform content creator configuration' para acceso de administración
  • El contenido se crea sin autor por defecto - mapear el campo uid si se necesita atribución de autor
  • El descifrado de campos encriptados requiere configuración apropiada del perfil de encriptación
  • Asegurar que los permisos del tipo de contenido estén configurados correctamente para contenido creado automáticamente
  • El sync_content_field no debería ser editable por usuarios finales para prevenir manipulación de relaciones de contenido
  • Los valores de token no se sanitizan automáticamente - tener precaución al mapear a campos que renderizan HTML