Media Bulk Upload

Permite cargar múltiples archivos de forma masiva y crea automáticamente las entidades de medios correspondientes utilizando la interfaz de arrastrar y soltar de DropzoneJS.

media_bulk_upload
14,884 sites
57
drupal.org

Install

Drupal 11, 10, 9, 8 v3.0.4
composer require 'drupal/media_bulk_upload:^3.0'

Overview

Media Bulk Upload es un módulo de Drupal que simplifica el proceso de carga y gestión de múltiples archivos de medios. Aprovecha la biblioteca DropzoneJS para proporcionar una interfaz amigable de arrastrar y soltar para cargar archivos de forma masiva, creando automáticamente entidades de medios para cada archivo cargado.

El módulo introduce un sistema de entidades de configuración que permite a los administradores crear múltiples formularios de carga masiva con diferentes configuraciones. Cada configuración puede especificar qué tipos de medios están permitidos, permitiendo que el sistema asigne automáticamente el tipo de medio correcto a los archivos cargados según sus extensiones de archivo. Cuando las extensiones de archivo se superponen entre tipos de medios, el módulo asigna automáticamente el archivo a uno de los tipos coincidentes.

Una característica potente es la funcionalidad de campos compartidos, que muestra campos comunes a todos los tipos de medios seleccionados en el formulario de carga. Esto permite a los usuarios rellenar previamente metadatos (como texto alternativo, título o campos personalizados) que se aplicarán a todas las entidades de medios cargadas, acelerando significativamente el flujo de trabajo de creación de contenido. El módulo también admite modos de formulario, permitiendo a los administradores controlar qué campos aparecen en el formulario de carga masiva.

Features

  • Interfaz de carga de archivos mediante arrastrar y soltar utilizando la biblioteca DropzoneJS para cargas masivas de archivos rápidas e intuitivas
  • Sistema de entidades de configuración que permite múltiples configuraciones de formularios de carga masiva con diferentes combinaciones de tipos de medios
  • Detección y asignación automática de tipo de medio basada en el mapeo de extensiones de archivo
  • Soporte de campos compartidos - muestra campos comunes a todos los tipos de medios seleccionados para entrada de metadatos masiva
  • Selección de modo de formulario para personalizar qué campos aparecen en el formulario de carga
  • Validación de tamaño de archivo por configuración de tipo de medio, respetando los límites de carga individuales de cada tipo de medio
  • Procesamiento por lotes para manejar grandes cantidades de cargas de archivos de manera eficiente
  • Generación dinámica de permisos para cada configuración de carga masiva, permitiendo un control de acceso detallado
  • Integración con el módulo Admin Toolbar Extra Tools para una ubicación conveniente en el menú
  • Soporte para múltiples tipos de medios en un solo formulario de carga con enrutamiento basado en extensiones

Use Cases

Carga masiva de imágenes para una galería de fotos

Cree una Media Bulk Config seleccionando solo el tipo de medio 'Imagen'. Los usuarios pueden entonces arrastrar y soltar múltiples imágenes a la vez, y opcionalmente rellenar texto alternativo compartido u otros campos de metadatos que se aplicarán a todas las imágenes cargadas.

Carga de medios mixtos para editores de contenido

Cree una Media Bulk Config que incluya los tipos de medios Imagen, Documento y Video. El sistema detectará automáticamente el tipo de archivo según la extensión y creará la entidad de medio apropiada. Por ejemplo, los archivos .jpg se convierten en medios de Imagen, los archivos .pdf se convierten en medios de Documento, y los archivos .mp4 se convierten en medios de Video.

Ingesta simplificada de recursos con metadatos

Configure un modo de formulario que incluya referencias a términos de taxonomía o campos personalizados. Al cargar de forma masiva, los editores de contenido pueden seleccionar una categoría o introducir metadatos una vez, y se aplicará a todos los elementos de medios cargados, ahorrando tiempo significativo en comparación con editar cada elemento individualmente.

Formularios de carga departamentales con control de acceso

Cree entidades Media Bulk Config separadas para diferentes departamentos (por ejemplo, 'Recursos de Marketing', 'Documentos de RRHH'). Otorgue el permiso correspondiente 'use X bulk upload form' a los roles apropiados. Cada departamento solo puede acceder a su formulario de carga designado.

Migración de medios de alto volumen

Al migrar contenido que incluye muchos archivos de medios, use la función de carga masiva para importar archivos rápidamente. El procesamiento por lotes asegura que grandes cantidades de archivos se manejen eficientemente sin problemas de tiempo de espera agotado.

Tips

  • Cree configuraciones de carga masiva separadas para diferentes casos de uso (por ejemplo, una solo para imágenes, otra para documentos) para proporcionar experiencias de usuario más limpias
  • Use modos de formulario para controlar qué campos aparecen en el formulario de carga masiva - cree un modo de formulario 'bulk_upload' con solo campos esenciales para simplificar el proceso de carga
  • El enlace de carga masiva aparece automáticamente en las páginas de la biblioteca de medios y Contenido > Medios de administración, proporcionando acceso rápido para los editores de contenido
  • El tamaño máximo de archivo respeta el límite más alto entre los tipos de medios seleccionados, por lo que incluir un tipo de medio con un límite de tamaño de archivo grande aumentará el tamaño permitido para todas las cargas en ese formulario
  • Todos los campos compartidos se hacen opcionales durante la carga masiva, por lo que la validación de campos requeridos ocurre al editar elementos de medios individuales posteriormente

Technical Details

Admin Pages 6
Configuración de Media Bulk Upload /admin/config/media/media-bulk-config

Lista todas las entidades Media Bulk Config configuradas. Desde aquí los administradores pueden añadir, editar o eliminar configuraciones de formularios de carga masiva. Cada configuración define qué tipos de medios están disponibles para la carga masiva y qué modo de formulario se utiliza.

Añadir configuración de carga masiva de medios /admin/config/media/media-bulk-config/add

Formulario para crear una nueva entidad Media Bulk Config. Permite a los administradores definir un nuevo formulario de carga masiva seleccionando tipos de medios y opcionalmente un modo de formulario para campos compartidos.

Editar configuración de carga masiva de medios /admin/config/media/media-bulk-config/{media_bulk_config}/edit

Formulario para modificar una entidad Media Bulk Config existente. Permite cambiar la etiqueta, los tipos de medios y la configuración del modo de formulario.

Eliminar configuración de carga masiva de medios /admin/config/media/media-bulk-config/{media_bulk_config}/delete

Formulario de confirmación para eliminar una entidad Media Bulk Config. Esto eliminará la configuración del formulario de carga masiva pero no afectará a ninguna entidad de medio que se haya creado usándola.

Carga masiva de medios /media/bulk-upload

Página de inicio para la carga masiva de medios. Si solo existe una Media Bulk Config, los usuarios son redirigidos automáticamente a ese formulario de carga. Si existen múltiples configuraciones, se muestra una lista de formularios de carga masiva disponibles según los permisos del usuario.

Carga múltiple /media/bulk-upload/{media_bulk_config}

El formulario real de carga masiva donde los usuarios pueden arrastrar y soltar o seleccionar múltiples archivos para cargar. Muestra información sobre los tipos de medios permitidos, extensiones de archivo y tamaños máximos de archivo. Si se configura un modo de formulario, se muestran campos compartidos para la entrada de metadatos masiva.

Permissions 2
Configurar formulario de carga de medios

Permite a los usuarios crear, editar y eliminar entidades Media Bulk Config en /admin/config/media/media-bulk-config

{Config Label}: Usar formulario de carga

Permiso dinámico generado para cada entidad Media Bulk Config. Otorga acceso para usar el formulario de carga masiva específico. Los usuarios necesitan este permiso para acceder a /media/bulk-upload/{config_id}.

Hooks 2
hook_help

Implementa hook_help() para proporcionar texto de ayuda del módulo en la página de ayuda

hook_menu_links_discovered_alter

Modifica los enlaces de menú para integrarse con el módulo Admin Toolbar Extra Tools. Cuando Admin Toolbar Extra Tools está habilitado, coloca el elemento de menú de carga masiva bajo Contenido > Medios.

Troubleshooting 6
DropzoneJS no funciona o muestra errores

Asegúrese de que el módulo DropzoneJS esté correctamente instalado y la biblioteca JavaScript DropzoneJS esté ubicada en el lugar correcto. Siga cuidadosamente las instrucciones de instalación del módulo DropzoneJS.

Los archivos se cargan pero no se crean entidades de medios

Verifique que la extensión del archivo esté incluida en las extensiones permitidas de uno de los tipos de medios seleccionados. También verifique que el campo de destino en el tipo de medio tenga la configuración correcta de extensiones de archivo.

Permiso denegado al acceder al formulario de carga masiva

Los usuarios necesitan el permiso específico 'use [config_id] bulk upload form' para cada configuración. Otorgue este permiso en /admin/people/permissions.

Los campos compartidos no aparecen en el formulario de carga

Asegúrese de que se haya seleccionado un modo de formulario en la Media Bulk Config. También verifique que los campos que espera estén configurados para mostrarse en ese modo de formulario para todos los tipos de medios seleccionados. Solo se mostrarán los campos que existan en todos los tipos de medios seleccionados.

El límite de tamaño de archivo es demasiado restrictivo

El tamaño máximo de archivo está determinado por la configuración max_filesize más grande entre los tipos de medios seleccionados. Verifique y ajuste la configuración de campos en los tipos de medios individuales. También verifique las configuraciones upload_max_filesize y post_max_size de PHP.

Los archivos se están asignando al tipo de medio incorrecto

Cuando las extensiones de archivo se superponen entre tipos de medios (por ejemplo, tanto Imagen como Documento aceptan .png), la asignación es automática. Considere usar extensiones que no se superpongan o crear formularios de carga masiva separados para cada tipo de medio si se necesita un control preciso.

Security Notes 4
  • El acceso a los formularios de carga masiva está controlado por permisos granulares - cada configuración tiene su propio permiso
  • Los usuarios aún necesitan permisos apropiados de creación de medios además de los permisos de carga masiva
  • La validación de archivos ocurre según la configuración del tipo de medio incluyendo extensiones permitidas y límites de tamaño de archivo
  • El módulo utiliza el sistema de manejo de archivos de Drupal que proporciona seguridad contra cargas de archivos maliciosos