Adios
BlogComercio electrónico con Next.js

Comercio electrónico con Next.js

Cómo crear navegación facetada en Next.js sin una trampa de rastreo SEO

Crea filtros útiles de categorías en Next.js y controla las URLs canónicas, la normalización de parámetros, la paginación, las combinaciones rastreables y los resultados vacíos.

Equipo de AdiosActualizado 17 de julio de 20268 min de lectura

Los filtros pueden crear millones de URL técnicamente válidas desde un modesto catálogo. Sólo un pequeño subconjunto intencional generalmente merece convertirse en una página de aterrizaje de búsqueda.

Separa la jerarquía del estado de filtros

Trail Supply usa rutas duraderas de categorías, como /women/jackets. El color, la talla, el nivel de impermeabilidad, el rango de precios y el orden refinan ese conjunto. La jerarquía de categorías comunica el catálogo; la mayoría del estado de filtros ayuda al comprador dentro de esa categoría.

Enumera cada filtro, valor permitido, valor predeterminado e interacción. Decide qué combinaciones tienen demanda de búsqueda propia, suficientes productos, inventario estable y contenido explicativo único. Pueden convertirse en páginas de destino seleccionadas; el resto sigue siendo estado útil de la aplicación sin indexación.

Normaliza las URLs de parámetros

Usa un nombre de parámetro por filtro, valores normalizados en minúsculas, un orden estable y ningún parámetro con su valor predeterminado. Rechaza filtros y valores desconocidos. Redirige los formatos equivalentes de URL a la representación normalizada cuando mejore la coherencia.

Un analizador de filtros debe devolver estado tipado de la aplicación y una URL normalizada, no pasar searchParams arbitrarios a consultas de base de datos. Limita el número de valores y la complejidad para proteger tanto la base de datos como la superficie de rastreo.

const filters = filterSchema.parse({
  color: searchParams.color,
  size: searchParams.size,
  sort: searchParams.sort ?? "featured",
});

const normalized = buildFilterUrl("/women/jackets", filters);

Renderiza los resultados filtrados en el servidor

Lee searchParams en la página, valida los filtros, consulta los productos en el servidor y renderiza el número de resultados, los filtros activos, los enlaces de productos y la paginación en la respuesta inicial. Los Client Components pueden actualizar los filtros mediante navegación sin controlar la consulta del catálogo.

Usa estados estables de carga y vacío. Un filtro inválido no debe convertirse en una categoría vacía con respuesta correcta. Devuelve o redirige según la política de normalización y ofrece una opción útil de limpiar filtros para una combinación válida sin resultados.

Elige explícitamente las combinaciones indexables

Mantén una lista de permitidos o un catálogo de páginas de destino con contenido para combinaciones como chaquetas impermeables de mujer. Una combinación indexable necesita su propia URL canónica, título, H1, descripción, enlaces internos y suficientes resultados estables. Revísala como cualquier otra página de contenido.

No deduzcas la indexabilidad solo porque una combinación devuelva productos hoy. El inventario puede dejarla vacía mañana, y varias combinaciones pueden atender la misma intención. Los equipos de producto y búsqueda deben responsabilizarse juntos del conjunto aprobado.

Gestiona la paginación y el orden

Da a los resultados de categorías paginados URLs estables y enlaces normales para que los usuarios y rastreadores alcancen los productos más profundos. No marques todas las páginas como canónicas hacia la primera si contienen enlaces de productos distintos. Ordenar suele cambiar el orden, no el recurso, y normalmente no debe crear otra página de destino para búsquedas.

Mantén estable la paginación al cambiar filtros. Vuelve a la primera página con un filtro nuevo, rechaza las páginas fuera de rango con un estado adecuado y asegúrate de que canonical representa el estado normalizado realmente renderizado.

Mide el comportamiento de rastreo y el coste del servidor

Inspecciona los registros de solicitudes para detectar parámetros inesperados, combinaciones vacías repetidas, paginación profunda y carga de base de datos causada por bots. Compara las URLs del sitemap con las indexadas y descubiertas. Una diferencia creciente suele revelar descubrimientos accidentales o páginas de destino débiles.

Guarda en caché las categorías y páginas de destino aprobadas con etiquetas específicas, pero limita las consultas de filtros arbitrarios y protege la base de datos. Los registros del entorno de ejecución de Adios vinculan el comportamiento de las solicitudes a la versión que las sirve y ayudan a asociar un pico de rastreo con el cambio de ruta o enlace que lo produjo.

Prueba la política antes de la promoción

Crea una tabla de URLs normales, equivalentes, aprobadas, vacías, inválidas, ordenadas, paginadas y fuera de rango. Comprueba su estado final, redirección, canonical, valor robots, H1, resultados, enlaces internos y pertenencia al sitemap. Así una política SEO vaga se convierte en expectativas ejecutables.

Despliega la candidata en una vista previa de Adios y ejecuta la tabla contra la compilación de producción. Inspecciona los registros en busca de carga inesperada de consultas y verifica la ruta de salud. Promueve el cambio de enrutamiento solo si el comportamiento normalizado es correcto; en caso contrario, el dominio personalizado canónico permanece en la última versión saludable.

Todos los artículos