Views URL alias

Permite filtrar y ordenar Views por alias de ruta para entidades de contenido.

views_url_alias
1,503 sites
20
drupal.org
Drupal 8 Drupal 9 Drupal 10 Drupal 11

Instalar

Drupal 11, 10, 9, 8 v3.1.2
composer require 'drupal/views_url_alias:^3.1'

Overview

El módulo Views URL alias permite filtrar y ordenar Views por alias de ruta URL. Esto es particularmente útil para sitios web que utilizan estructuras de URL jerárquicas, permitiendo crear vistas que muestran contenido de secciones específicas de tu sitio basándose en sus patrones de URL.

El módulo crea y mantiene una tabla de base de datos separada views_url_alias que mapea IDs de entidades a sus correspondientes alias de URL. Esta tabla dedicada proporciona uniones limpias y rápidas entre las tablas de entidades de contenido y sus alias de ruta, asegurando un rendimiento óptimo de las consultas.

Se soportan todas las entidades de contenido con alias de URL, incluyendo nodos, términos de taxonomía, usuarios y cualquier tipo de entidad de contenido personalizada. El módulo también se integra perfectamente con el módulo Pathauto para operaciones masivas de alias.

Features

  • Proporciona relación de Views para alias de URL en todos los tipos de entidades de contenido
  • Permite filtrar Views por patrones de alias de URL (ej., mostrar todo el contenido bajo /products/*)
  • Permite ordenar Views por alias de URL alfabéticamente
  • Mantiene una tabla de base de datos views_url_alias dedicada para uniones rápidas y eficientes
  • Sincroniza automáticamente la tabla de alias cuando los alias se crean, actualizan o eliminan
  • Integración completa con el módulo Pathauto para actualizaciones masivas de alias
  • Soporte multilingüe con seguimiento de alias por idioma
  • Interfaz de administración para reconstruir la tabla de alias cuando sea necesario
  • Soporta combinación con Views Bulk Operations (VBO) para aplicar operaciones a contenido basado en rutas URL

Use Cases

Filtrar contenido por jerarquía de URL

Crea una vista que muestre todos los nodos con URLs que comiencen con un patrón de ruta específico. Por ejemplo, muestra todo el contenido bajo /documentation/* agregando la relación 'Node URL Alias' y filtrando el campo de alias con 'comienza con /documentation/'.

Construir listados de contenido específicos por sección

Muestra contenido de secciones específicas de tu sitio web. Agrega la relación URL Alias a una vista de contenido, luego filtra por alias que contenga '/products/' para mostrar solo páginas relacionadas con productos.

Ordenar contenido alfabéticamente por URL

Crea una vista estilo mapa del sitio donde el contenido se ordena alfabéticamente por su ruta URL. Agrega la relación URL Alias y ordena por el campo de alias.

Operaciones masivas en secciones de contenido basadas en URL

Combina con Views Bulk Operations para realizar acciones en contenido basado en patrones de URL. Crea una vista filtrada por patrón de alias, agrega campos VBO y aplica operaciones masivas como publicar, despublicar o cambiar la propiedad del contenido.

Filtrado de URL multilingüe

Filtra contenido por alias de URL específicos del idioma. El módulo rastrea los alias por idioma, permitiendo crear vistas que muestren contenido con patrones de alias específicos en idiomas particulares.

Tips

  • Al configurar una vista con filtrado de alias de URL, siempre agrega primero la relación URL Alias del tipo de entidad apropiado (ej., 'Content URL Alias' para nodos)
  • Marca la opción 'Requerir esta relación' si solo quieres mostrar contenido que tenga alias de URL definidos
  • Usa el operador de filtro 'comienza con' para coincidir con patrones de URL jerárquicos como /products/*
  • Después de operaciones masivas de alias con Pathauto, verifica que la tabla views_url_alias esté actualizada revisando tus vistas filtradas
  • El módulo reconstruye automáticamente la tabla de alias durante la instalación, por lo que los alias existentes están disponibles inmediatamente

Technical Details

Admin Pages 1
Reconstruir tabla de alias de views /admin/structure/views/settings/alias

Este formulario de confirmación permite a los administradores reconstruir la tabla de base de datos views_url_alias. Esta operación purga la tabla existente y la rellena con todos los alias de ruta actuales del sistema. Esto típicamente solo es necesario si los alias de URL han sido actualizados fuera del formulario normal de edición de alias, como a través de manipulación directa de la base de datos o importaciones.

Hooks 5
hook_ENTITY_TYPE_insert (path_alias)

Inserta un alias de ruta en la tabla views_url_alias cuando se crea un nuevo alias de ruta.

hook_ENTITY_TYPE_update (path_alias)

Actualiza la tabla views_url_alias cuando se modifica un alias de ruta.

hook_ENTITY_TYPE_delete (path_alias)

Elimina la entrada correspondiente de la tabla views_url_alias cuando se elimina un alias de ruta.

hook_pathauto_alias_alter

Se integra con el módulo Pathauto para guardar alias durante operaciones de actualización masiva.

hook_views_data

Proporciona integración con Views definiendo la tabla views_url_alias y creando relaciones para todos los tipos de entidades de contenido.

Troubleshooting 4
Los alias de URL no aparecen en los filtros de Views

La tabla views_url_alias puede estar desincronizada. Ve a Administración > Estructura > Views > Configuración > Reconstruir tabla de alias de views y haz clic en 'Reconstruir tabla' para repoblar los datos de alias.

Los alias recién creados no se muestran en Views

Asegúrate de que el alias de ruta fue creado a través de la interfaz normal de Drupal. Si los alias fueron importados o creados mediante manipulación directa de la base de datos, necesitas reconstruir la tabla views_url_alias.

La relación URL Alias no está disponible para mi tipo de entidad

El módulo solo soporta entidades de contenido con IDs numéricos. Las entidades personalizadas con IDs de cadena no están soportadas. También verifica que tu tipo de entidad tenga una tabla de datos definida.

Problemas de rendimiento con gran cantidad de alias

El módulo mantiene columnas de base de datos indexadas para consultas eficientes. Si experimentas lentitud, verifica que existan los índices de base de datos en la tabla views_url_alias. También puede ser necesario optimizar tu consulta de Views.