Adios
BlogCommerce électronique avec Next.js

Commerce électronique avec Next.js

Créer une navigation à facettes dans Next.js sans piège d’exploration SEO

Créez des filtres de catégories Next.js utiles en maîtrisant les URL canoniques, la normalisation des paramètres, la pagination, les combinaisons explorables et les résultats vides.

Équipe AdiosMise à jour 17 juillet 20268 min de lecture

Les filtres peuvent créer des millions d’URL techniquement valides à partir d’un catalogue modeste. Seul un petit ensemble choisi mérite généralement de devenir des pages d’entrée pour la recherche.

Séparer la hiérarchie de l'état du filtre

Trail Supply utilise des routes de catégories durables comme /women/jackets. La couleur, la taille, le niveau d’imperméabilité, la plage de prix et le tri affinent cet ensemble. La hiérarchie des catégories décrit le catalogue ; l’essentiel des filtres sert à aider l’acheteur dans cette catégorie.

Listez chaque filtre, valeur autorisée, valeur par défaut et interaction. Décidez quelles combinaisons répondent à une demande de recherche distincte, avec assez de produits, des stocks stables et un contenu explicatif unique. Elles peuvent devenir des pages d’entrée choisies ; les autres restent des états applicatifs utiles non indexables.

Normaliser les URL à paramètres

Utilisez un nom de paramètre par filtre, des valeurs normalisées en minuscules, un ordre stable et aucun paramètre portant sa valeur par défaut. Rejetez les filtres et valeurs inconnus. Redirigez les URL équivalentes vers la représentation normalisée lorsque cela améliore la cohérence.

Un analyseur de filtres doit renvoyer un état applicatif typé et une URL normalisée, sans transmettre arbitrairement searchParams aux requêtes de base de données. Limitez le nombre de valeurs et la complexité pour protéger la base et la surface d’exploration.

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

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

Rendre les résultats filtrés sur le serveur

Lisez searchParams dans la page, validez les filtres, interrogez les produits sur le serveur et rendez dès la première réponse le nombre de résultats, les filtres actifs, les liens produit et la pagination. Les Client Components peuvent modifier les filtres par navigation sans gérer la requête de catalogue.

Prévoyez des états de chargement et de résultat vide stables. Un filtre invalide ne doit pas devenir une catégorie vide renvoyant un succès. Renvoyez une réponse ou redirigez selon la politique de normalisation, et proposez un moyen utile d’effacer les filtres pour une combinaison valide sans résultat.

Choisir explicitement les combinaisons indexables

Maintenez une liste autorisée ou un catalogue de pages d’entrée associé à du contenu pour des combinaisons comme les vestes imperméables pour femmes. Une combinaison indexable exige sa propre URL canonique, son titre, son H1, sa description, ses liens internes et suffisamment de résultats stables. Elle doit être revue comme toute autre page de contenu.

Ne déduisez pas l’indexabilité du seul fait qu’une combinaison renvoie aujourd’hui des produits. Les stocks peuvent la rendre vide demain, et plusieurs combinaisons peuvent servir la même intention. Les équipes produit et recherche doivent définir ensemble l’ensemble approuvé.

Gérer la pagination et le tri

Donnez aux résultats de catégories paginés des URL stables et des liens classiques pour que les utilisateurs et robots atteignent les produits plus loin. Ne faites pas pointer toutes les URL canoniques vers la première page si chacune contient des liens produit différents. Le tri change généralement l’ordre plutôt que la ressource et ne doit normalement pas créer de page d’entrée distincte.

Gardez la pagination stable lors des changements de filtres. Revenez à la première page après un nouveau filtre, rejetez les pages hors limites avec un statut pertinent et assurez-vous que l’URL canonique représente l’état normalisé réellement rendu.

Mesurer l’exploration et le coût serveur

Consultez les journaux de requêtes pour repérer les paramètres inattendus, combinaisons vides répétées, paginations profondes et charges de base causées par les robots. Comparez les URL du sitemap aux URL indexées et découvertes. Un écart croissant révèle souvent une découverte involontaire ou des pages d’entrée trop faibles.

Mettez en cache les catégories et pages d’entrée approuvées avec des tags ciblés, mais limitez les requêtes de filtres arbitraires pour protéger la base. Les journaux d’exécution Adios relient le comportement des requêtes à la version qui les sert, aidant l’équipe à associer un pic d’exploration au changement de routage ou de liens qui l’a produit.

Tester la politique avant la promotion

Construisez un tableau d’URL normales, équivalentes, approuvées, vides, invalides, triées, paginées et hors limites. Vérifiez pour chacune le statut final, la redirection, l’URL canonique, la valeur robots, le H1, les résultats, les liens internes et la présence dans le sitemap. Une politique SEO vague devient ainsi des attentes exécutables.

Déployez la candidate dans un aperçu Adios et exécutez le tableau de tests sur la compilation de production. Consultez les journaux pour repérer une charge de requêtes inattendue et vérifiez le contrôle de santé. Ne promouvez le changement de routage que si le comportement normalisé est correct ; sinon, le domaine personnalisé canonique reste sur la dernière version opérationnelle.

Tous les articles