Media Directories
Proporciona una estructura de directorios para entidades Media utilizando términos de taxonomía, permitiendo la organización de archivos multimedia en carpetas con una experiencia completa de navegación de directorios mediante jsTree.
media_directories
Overview
Media Directories añade un potente sistema de organización basado en directorios a las entidades Media de Drupal. Aprovechando los términos de taxonomía como carpetas, este módulo permite a los administradores del sitio y editores de contenido organizar archivos multimedia en una estructura jerárquica de carpetas, similar a un gestor de archivos tradicional.
El módulo añade un campo base 'directory' a todas las entidades Media, permitiendo asignarlas a carpetas específicas. El módulo principal proporciona la funcionalidad básica, mientras que el submódulo UI ofrece una interfaz de navegación rica e interactiva usando jsTree, y el submódulo Editor se integra con CKEditor para una inserción fluida de multimedia.
Las capacidades principales incluyen organización de multimedia mediante arrastrar y soltar, creación/renombrado/eliminación de carpetas, edición rápida de múltiples elementos multimedia, funcionalidad de carga combinada para múltiples tipos de archivos y soporte de traducción tanto para directorios como para elementos multimedia.
Features
- Añade un campo de directorio a todas las entidades Media para organización en carpetas usando vocabulario de taxonomía
- Navegador de directorios interactivo basado en jsTree con operaciones CRUD completas (crear, renombrar, mover, eliminar directorios)
- Soporte de arrastrar y soltar para mover elementos multimedia entre directorios
- Funcionalidad de edición rápida para uno o múltiples elementos multimedia simultáneamente
- Función de carga combinada que permite subir múltiples tipos de archivos a través de una única interfaz
- Auto-detección del tipo de multimedia basada en extensiones de archivo durante la carga combinada
- Integración de widget de campo usando Entity Browser para campos de referencia de multimedia en tipos de contenido
- Integración con CKEditor con botón de inserción para añadir multimedia directamente en el contenido
- Funcionalidad de redimensionamiento de imagen en el diálogo de inserción con soporte de dimensiones personalizadas
- Soporte de traducción tanto para elementos multimedia como para términos de directorio mediante el módulo Content Translation
- Soporte para los temas de administración Gin y Claro con estilos optimizados
- Filtro de Views para filtrar multimedia por directorio en Media Library
- Opción de directorio raíz para mostrar todos los archivos independientemente de la asignación de directorio
- Integración con Admin Toolbar para controlar la visibilidad de los enlaces del menú Media/Files
Use Cases
Organización de activos multimedia para un sitio web grande
Un sitio web corporativo con miles de imágenes, documentos y videos puede usar Media Directories para organizar activos en carpetas basadas en departamentos (Marketing, RRHH, Productos) con subcarpetas para campañas, años o proyectos. Los editores pueden encontrar y reutilizar activos rápidamente navegando por la estructura de carpetas familiar.
Gestión de multimedia multi-sitio
Para instalaciones multisitio que comparten multimedia, los directorios pueden representar diferentes sitios o marcas. Combinado con permisos, equipos específicos solo pueden acceder y subir a sus carpetas designadas mientras los activos compartidos permanecen en directorios comunes.
Creación de contenido simplificada
Los editores de contenido que usan CKEditor pueden insertar imágenes directamente en artículos usando el botón de inserción de Media. El diálogo de inserción permite seleccionar entre estilos de imagen predefinidos o establecer dimensiones personalizadas, facilitando la creación de imágenes con el tamaño correcto sin recorte manual.
Cargas de archivos combinadas para gestores de multimedia
Habilita la carga combinada para permitir a los gestores de multimedia arrastrar y soltar lotes mixtos de imágenes, documentos y videos. El sistema crea automáticamente el tipo de multimedia apropiado para cada archivo basándose en la extensión, asignándolos todos al directorio seleccionado.
Reemplazo de la interfaz de Media Library del core
Las organizaciones que prefieren un flujo de trabajo basado en carpetas pueden habilitar las opciones para ocultar las pestañas de Media y Files del core, haciendo del navegador de Media Directories la interfaz principal para todas las operaciones de multimedia mientras mantiene compatibilidad total con el widget de Media Library.
Tips
- Usa el modo de visualización de formulario 'media_library' en los tipos de multimedia para personalizar qué campos aparecen en el diálogo de edición rápida, manteniéndolo enfocado en campos esenciales para una edición más rápida.
- Habilita 'Mostrar todos los archivos en el directorio raíz' durante la migración o configuración inicial para encontrar fácilmente multimedia desorganizada, luego deshabilítalo para una operación diaria más limpia.
- Crea la estructura de directorios antes de importar multimedia en masa para tener las carpetas listas para organización durante o después de la importación.
- Usa el campo de filtro en la barra de herramientas para buscar rápidamente dentro de directorios grandes - filtra por nombre de multimedia en la vista del directorio actual.
- Haz clic derecho en los directorios del árbol para un menú contextual con opciones de crear, renombrar y eliminar.
- Arrastra elementos multimedia directamente sobre los directorios en el árbol para moverlos - soporta selecciones múltiples para movimientos en lote.
- Configura la carga combinada con tus tipos de multimedia más utilizados para simplificar la experiencia de carga para los editores de contenido.
Technical Details
Admin Pages 2
/admin/config/media/media_directories
Configura los ajustes principales de Media Directories incluyendo la selección del vocabulario de taxonomía a usar para la estructura de directorios y si mostrar todos los archivos en el directorio raíz.
/admin/content/browser
Interfaz independiente del navegador de multimedia que proporciona gestión completa de multimedia basada en directorios. Permite navegar, subir, editar, mover y eliminar elementos multimedia organizados en carpetas.
Permissions 1
Hooks 3
hook_entity_base_field_info
Añade el campo base 'directory' a todas las entidades Media, permitiendo la asignación a directorios de términos de taxonomía.
hook_ENTITY_TYPE_presave (media)
Valida los valores del campo directory antes de guardar entidades multimedia, asegurando que los valores del directorio raíz se almacenen como NULL.
hook_field_widget_complete_WIDGET_TYPE_form_alter (options_select)
Altera el widget options_select para el campo directory para mostrar 'Directorio raíz' en lugar de '- Ninguno -'.
Troubleshooting 5
Asegúrate de que la biblioteca jsTree esté instalada localmente en /libraries/jstree/dist/jstree.min.js o permite la carga desde CDN. Verifica la consola del navegador para errores de carga. Si usas Libraries API, el módulo detectará automáticamente la ruta de la biblioteca.
Navega a /admin/config/media/media_directories y selecciona un vocabulario de taxonomía para usar como directorios. Crea primero un nuevo vocabulario si es necesario.
Limpia las cachés de Drupal y asegúrate de que el módulo Views esté habilitado. Verifica que la vista media_directories_base exista y esté habilitada.
Asegúrate de que la extensión del archivo coincida con uno de los tipos de multimedia habilitados en la configuración de carga combinada. Verifica que el campo fuente del tipo de multimedia tenga la extensión configurada en su configuración de extensiones de archivo permitidas.
Añade el botón Media a la configuración de tu formato de texto en /admin/config/content/formats. Asegúrate de que los filtros 'Embed media' y 'Display embedded entities' estén habilitados.