Mejorando la Experiencia de Usuario: Paginación de Portafolios con Ventana

En el proyecto landing de devlog-ist, nos hemos enfocado en refinar la experiencia del usuario, especialmente en secciones con mucho contenido dinámico. Una de las mejoras clave ha sido la optimización de la paginación en los portafolios.

El Desafío de la Paginación Extensa

Tradicionalmente, cuando un portafolio o una lista de elementos tiene un gran número de páginas (por ejemplo, 30 o más), el paginador mostraba todos los números de página. Esto, aunque funcional, resultaba en un desbordamiento visual de la interfaz de usuario, especialmente en dispositivos con pantallas más pequeñas, y dificultaba la navegación.

La Solución: Paginación con Ventana y Puntos Suspensivos

Para abordar este problema, implementamos una estrategia de paginación con ventana, limitando el número de páginas visibles. Ahora, en lugar de mostrar todas las páginas, el sistema muestra un máximo de aproximadamente 9 números de página, utilizando puntos suspensivos (...) para representar las páginas intermedias ocultas.

Esta aproximación mejora significativamente la legibilidad y la usabilidad del paginador, manteniendo la interfaz limpia y organizada, sin sacrificar la capacidad de navegar a cualquier página. La implementación en un framework como Laravel a menudo implica la personalización de las vistas del paginador.

Ejemplo Conceptual en Laravel

Laravel facilita la personalización de la paginación a través de sus vistas publicables. Puedes generar estas vistas y luego modificar la lógica para implementar la "ventana" de páginas.

Primero, puedes publicar las vistas de paginación:

php artisan vendor:publish --tag=laravel-pagination

Luego, en tu AppServiceProvider o en un Service Provider dedicado, puedes especificar una vista personalizada:

use Illuminate\Pagination\Paginator;

class AppServiceProvider extends ServiceProvider
{
    public function boot()
    {
        Paginator::defaultView('pagination::custom-windowed');
    }
}

Dentro de la vista resources/views/pagination/custom-windowed.blade.php, se implementaría la lógica para determinar qué números de página mostrar, incluyendo la inserción de los puntos suspensivos cuando la ventana de páginas es necesaria. Esto permite que el paginador se adapte dinámicamente, mostrando todos los números si hay pocas páginas, o la ventana con elipses si hay muchas.

Beneficios Clave

  • Mejora de la UI: Elimina el desbordamiento visual, presentando un paginador limpio y compacto.
  • Navegación Intuitiva: Facilita la comprensión de dónde se encuentra el usuario en relación con el total de páginas, sin abrumar con una lista interminable.
  • Consistencia: Proporciona una experiencia de usuario consistente en portafolios de diferentes tamaños, desde pocos elementos hasta colecciones extensas.

Esta pequeña pero impactante mejora demuestra cómo los ajustes en la interfaz de usuario pueden tener un gran impacto en la experiencia general del usuario, haciendo la navegación por grandes volúmenes de contenido mucho más agradable y eficiente.

Mejorando la Experiencia de Usuario: Paginación de Portafolios con Ventana
Gerardo Ruiz

Gerardo Ruiz

Author

Share: