Configuration Views

Permite a los constructores de sitios crear Views basadas en entidades de configuración, como roles, menús, estilos de imagen y tipos de contenido.

config_views
2,152 sites
45
drupal.org

Install

Drupal 11, 10, 9, 8 v2.1.2
composer require 'drupal/config_views:^2.1'

Overview

Configuration Views extiende el módulo Views de Drupal para soportar entidades de configuración como fuente de datos. Esto permite a los constructores de sitios crear listas personalizadas de elementos de configuración como tipos de contenido, menús, estilos de imagen, vocabularios de taxonomía, roles de usuario y prácticamente cualquier otra entidad de configuración en Drupal.

El módulo proporciona un plugin de consulta personalizado que aprovecha la API Entity Query de Drupal para obtener entidades de configuración, junto con manejadores de filtros especializados para campos de cadena y booleanos. También incluye un manejador de campo para mostrar operaciones de entidad (editar, eliminar, etc.) y un plugin de Entity Reference Selection que permite usar Views como fuente para campos de referencia de entidad que apuntan a entidades de configuración.

Tras la instalación, el módulo proporciona 14 Views preconfiguradas que reemplazan las páginas de listado de administración estándar de Drupal. Estas Views pueden personalizarse, extenderse con filtros expuestos, ordenarse, paginarse y exportarse a varios formatos, llevando todo el poder de Views a las interfaces de gestión de configuración.

Features

  • Plugin de consulta Views personalizado (views_config_entity_query) que permite consultar entidades de configuración usando la API Entity Query de Drupal
  • Plugin de filtro de cadenas (config_entity_string) con operadores: igual, no igual, contiene, comienza con, termina con, está vacío, no está vacío
  • Plugin de filtro booleano (config_entity_boolean) para filtrar campos booleanos de entidades de configuración
  • Plugin de campo de operaciones (config_entity_operations) que renderiza enlaces de operaciones de entidad (editar, eliminar, etc.)
  • Plugin Entity Reference Selection (config_views) que permite a Views filtrar referencias de entidades de configuración
  • 14 Views preconstruidas que reemplazan páginas de administración del core para: tipos de comentario, formularios de contacto, tipos de contenido, tipos de bloque personalizado, formatos de fecha, modos de formulario, estilos de imagen, menús, accesos directos, vocabularios de taxonomía, formatos de texto, roles de usuario, modos de vista y lista de views
  • Categorización automática del asistente de Views que agrupa las Views de entidades de configuración bajo 'Configuration' en el formulario Añadir View
  • Soporte para funcionalidad completa de Views incluyendo filtros expuestos, ordenamiento, paginación y varios formatos de visualización
  • Implementación de hook para organizar los asistentes de view agrupando opciones de contenido y configuración alfabéticamente

Use Cases

Crear una lista filtrada de tipos de contenido

Los constructores de sitios pueden personalizar la view de Tipos de contenido para añadir filtros expuestos, permitiendo a los administradores buscar tipos de contenido específicos por nombre o filtrar por propiedades como si tienen descripción. La view puede ordenarse por cualquier campo disponible.

Construir un campo de referencia de entidad basado en roles

Usando el manejador Entity Reference Selection config_views, los desarrolladores pueden crear un campo de referencia de entidad que referencie roles de usuario, filtrado por una View. Por ejemplo, un campo podría referenciar solo roles que tengan un permiso específico o cumplan ciertos criterios definidos en los filtros de la View.

Personalizar páginas de administración con características de Views

Reemplazar las páginas de listado de administración estándar de Drupal con versiones potenciadas por Views que soporten paginación, filtros de búsqueda expuestos, columnas ordenables y la capacidad de exportar listas (con módulos de exportación apropiados como Views Data Export).

Crear un panel de todas las Views habilitadas

Habilitar la View views_list para obtener una lista personalizable de todas las Views en el sitio. La View muestra views habilitadas y deshabilitadas por separado y puede personalizarse para añadir filtros por etiqueta, mostrar solo views con visualizaciones específicas, etc.

Gestionar estilos de imagen con búsqueda

Personalizar la View image_styles para añadir un filtro expuesto en el nombre del estilo, facilitando encontrar estilos de imagen específicos en sitios con muchas definiciones de estilos.

Tips

  • Algunas Views están deshabilitadas por defecto. Revísalas en /admin/structure/views y habilita las que quieras usar.
  • El módulo automáticamente hace disponibles todos los tipos de entidades de configuración como tablas base de Views, no solo las 14 Views preconstruidas.
  • Al crear una nueva View, busca bajo el grupo 'Configuration' en el desplegable 'Mostrar' para encontrar todos los tipos de entidades de configuración disponibles.
  • El manejador Entity Reference Selection config_views es útil cuando necesitas referenciar entidades de configuración (como roles) desde campos de referencia de entidad y quieres capacidades de filtrado de Views.
  • Todas las características estándar de Views funcionan con Views de entidades de configuración: filtros expuestos, ordenamientos, paginadores, diferentes tipos de visualización, relaciones y más.

Technical Details

Admin Pages 14
Tipos de comentario /admin/structure/comment

Lista todos los tipos de comentario definidos en el sitio. Muestra la etiqueta del tipo de comentario, descripción y proporciona enlaces de operaciones para editar y gestionar cada tipo de comentario. Reemplaza la página de administración de tipos de comentario del core.

Formularios de contacto /admin/structure/contact

Lista todos los formularios de contacto. Muestra la etiqueta del formulario, destinatarios (campo de respuesta) y enlaces de operaciones. Esta View está deshabilitada por defecto.

Tipos de contenido /admin/structure/types

Lista todos los tipos de contenido con sus nombres, descripciones y enlaces de operaciones. Proporciona un reemplazo basado en Views para la página de administración de tipos de contenido del core con soporte completo de paginación.

Biblioteca de bloques personalizados /admin/structure/block/block-content/types

Lista todos los tipos de bloque personalizado con etiquetas enlazadas a sus páginas de edición, descripciones y enlaces de operaciones.

Formatos de fecha y hora /admin/config/regional/date-time

Lista todas las configuraciones de formato de fecha mostrando el nombre del formato, patrón y enlaces de operaciones.

Modos de formulario /admin/structure/display-modes/form

Lista todos los modos de formulario de entidad agrupados por tipo de entidad objetivo. Muestra el nombre del modo de formulario y operaciones. Esta View está deshabilitada por defecto.

Estilos de imagen /admin/config/media/image-styles

Lista todos los estilos de imagen mostrando el nombre del estilo y enlaces de operaciones para editar, vaciar y eliminar estilos.

Menús /admin/structure/menu

Lista todos los menús con sus nombres (mostrados en negrita), descripciones y enlaces de operaciones. Ordenados alfabéticamente por etiqueta.

Accesos directos /admin/config/user-interface/shortcut

Lista todos los conjuntos de accesos directos con sus nombres y enlaces de operaciones.

Taxonomía /admin/structure/taxonomy

Lista todos los vocabularios de taxonomía ordenados alfabéticamente por nombre, con enlaces de operaciones para gestionar términos y configuración del vocabulario.

Formatos de texto y editores /admin/config/content/formats

Lista todos los formatos de texto/formatos de filtro con sus nombres y enlaces de operaciones. Esta View está deshabilitada por defecto.

Roles de usuario /admin/people/roles

Lista todos los roles de usuario ordenados por peso, mostrando etiquetas de rol y enlaces de operaciones. Esta View está deshabilitada por defecto.

Modos de vista /admin/structure/display-modes/view

Lista todos los modos de vista de entidad agrupados por tipo de entidad objetivo. Muestra el nombre del modo de vista y operaciones. Esta View está deshabilitada por defecto.

Views /admin/structure/views

Lista todas las Views separadas en secciones Habilitadas y Deshabilitadas. Muestra el nombre de la view (como encabezado h3), descripción, etiqueta y operaciones. Las views deshabilitadas aparecen en un bloque de pie de página. Esta View está deshabilitada por defecto.

Hooks 2
hook_views_data

Implementa hook_views_data() para registrar todos los tipos de entidades de configuración como tablas base de Views. Descubre dinámicamente todas las entidades de configuración y crea definiciones de datos de Views incluyendo campos, filtros, ordenamientos y argumentos basados en el esquema de configuración de la entidad.

hook_form_FORM_ID_alter

Implementa hook_form_view_add_form_alter() para reorganizar el desplegable de selección del asistente de Views, agrupando los tipos de entidades de configuración bajo un optgroup 'Configuration' y los tipos de contenido bajo 'Content', con ordenamiento alfabético dentro de cada grupo.

Troubleshooting 4
Algunas páginas de administración de Views no coinciden exactamente con el diseño del core

Varias Views están deshabilitadas por defecto porque pueden no replicar perfectamente el diseño de la página de administración del core. Habilítalas en /admin/structure/views solo después de revisar que cumplan tus necesidades. Luego puedes personalizarlas para que coincidan con tus requisitos.

Los campos específicos de entidad no están disponibles

El módulo actualmente proporciona campos limitados (nombre, descripción, id, etc.). Obtener campos específicos de entidad para todos los tipos de entidades de configuración es un trabajo en progreso. Usa los campos disponibles del esquema de configuración o crea manejadores de campos personalizados.

Las páginas de campos no están disponibles

Las Views para gestionar campos (entidades field_config) aún no están implementadas. Esta es una limitación conocida.

El paginador de la View muestra conteos incorrectos

Las consultas de entidades de configuración usan un mecanismo de paginación diferente a las consultas SQL. Asegúrate de usar un tipo de paginador compatible (paginador completo o mini paginador funcionan correctamente).

Security Notes 2
  • Cada View preconfigurada respeta los requisitos de permisos del core (ej., 'administer content types', 'administer permissions'). El control de acceso está configurado en cada View.
  • Al personalizar Views o crear nuevas basadas en entidades de configuración, asegúrate de que las restricciones de acceso apropiadas estén configuradas para prevenir acceso no autorizado a datos de configuración.