Comprendre le paramètre « phcursor » dans les URLs de pagination Shopify (depuis juin 2025)
Vous venez probablement de remarquer que vos URL contiennent un nouveau paramètre dans leurs URLs de pagination : phcursor, avec ce type de résultat par exemple :
/collections/votre-collection?page=3&phcursor=eyJhbGciOiJIUzI1NiJ9...
Nous l’avons vu apparaître dans nos URLs depuis le mois de juin 2025, et depuis, l’index de Google en est infesté.

Cette nouveauté a surpris de nombreux développeurs Shopify, d’autant plus qu’elle n’a pas été officiellement documentée. Dans cet article, en tant que consultant SEO spécialisé Shopify, je vous explique ce qu’est phcursor, pourquoi Shopify l’a mis en place, son impact sur votre SEO, et pourquoi il n’y a pas lieu de paniquer.
🧩 Qu’est-ce que phcursor ?
C’est un paramètre de pagination par curseur (cursor-based) utilisé par Shopify. Il encode la position exacte d’un produit dans une collection (sous forme de JWT).
📌 Quand apparaît-il ?
Shopify l’ajoute uniquement dans :
- Les liens “suivant” / “précédent” générés dynamiquement. Par exemple, si vous êtes sur la page 3, vous aurez le
phcursoruniquement pour aller vers les pages 2 ou 4, mais pas pour aller vers les pages 1, 5, 6, 7, etc.
Il n’est pas présent dans :
- Si vous arrivez sur une page via une URL directe, vous aurez uniquement
?page=xsansphcursor.
🧠 Pourquoi Shopify utilise-t-il ce paramètre ?
Pour assurer une navigation client robuste :
Les liens dynamiques (comme .pagination__item--next) utilisent phcursor afin d’éviter les décalages ou doublons lorsqu’un tri dynamique est appliqué ou lorsque les produits évoluent durant votre navigation.
Par exemple, si pendant que vous passez de la page 2 à la page 3, un produit est ajouté ou supprimé, Shopify pourra reprendre exactement où vous en étiez, sans doublon ni oubli.
Est-ce un problème pour le référencement naturel (SEO) ?
🔍 Mon avis en tant que responsable d’agence SEO spécialisé sur Shopify :
Cette fonctionnalité me semble importante. Shopify recommande (entre les lignes) d’utiliser default_pagination, et ce n’est pas pour rien :
- elle gère offset + cursor,
- elle suit leurs évolutions internes (perf, tri, stabilité),
- elle est pensée pour rester compatible avec leur moteur dans le temps.
Et comme d’habitude, si cette fonctionnalité posait vraiment problème à Google en générant des millions de pages inutiles, ce serait vite pris en compte côté bots. C’est d’ailleurs exactement le rôle des balises rel="prev/next" et canonical, avec des URL propres du type ?page=2, ?page=3.
Donc aucun souci de mon côté, je laisse ce paramètre tel quel.
Voir nos tutoriels SEO pour Shopify sur 👉 Agence Kalys
🧠 Peut-on supprimer phcursor dans le code ?
✅ Oui, techniquement c’est possible, mais pas directement via default_pagination, qui est un filtre Shopify générant automatiquement les liens avec phcursor depuis la récente mise à jour.
Si toutefois vous souhaitez supprimer phcursor, vous pouvez utiliser une solution simple en Liquid avec le filtre split: '&phcursor='. Concrètement, ce code récupère l’URL complète puis retire tout ce qui apparaît après &phcursor=.
Voici le code Liquid à utiliser :
{{ | split: '&phcursor=' | first }}
Pour intégrer facilement cette solution à votre boutique Shopify, vous pouvez copier-coller le texte suivant dans ChatGPT, accompagné de votre fichier pagination.liquid :
Voici mon fichier pagination.liquid. Peux-tu modifier tous les liens de pagination (paginate.previous.url, part.url, paginate.next.url) pour qu’ils excluent proprement le paramètre phcursor, en utilisant la méthode fiable suivante :
| split: ‘&phcursor=’ | firstMerci de me renvoyer le code complet mis à jour et propre !


