Dernière mise à jour : juin 2026, la liste des champs CMS et le comportement de ps_linklist ci-dessous reflètent PrestaShop 9.x (et s'appliquent aussi depuis la version 1.7.5+, où head_seo_title a été ajouté).

Vous créez une page CMS dans PrestaShop et vous l'intitulez "Conditions générales de vente, livraison, retours et politique de confidentialité". Pour les moteurs de recherche et pour la page elle-même, ce titre long et descriptif est exactement ce qu'il faut. Puis vous ajoutez cette page dans votre bloc de liens de pied de page, et PrestaShop affiche toute cette phrase comme libellé du lien. Votre pied de page se retrouve avec une colonne bien nette et une autre qui s'étale sur trois lignes. Le réflexe de tout marchand est de raccourcir le titre ; le problème, c'est qu'en le raccourcissant, vous perdez la valeur SEO pour laquelle vous l'aviez rédigé. Cet article explique le vrai mécanisme PrestaShop derrière ce conflit, ainsi que la méthode native du back-office pour donner à une page CMS un libellé de menu court sans toucher du tout à son titre.

Pourquoi PrestaShop impose ce choix, le vrai mécanisme

Une page CMS PrestaShop est représentée par un seul objet CMS, appuyé par des tables de base et de langue, et cet objet dispose d'un petit ensemble fixe de champs texte. En 9.x, la classe CMS (classes/CMS.php) définit un ensemble fixe de champs multilingues : meta_title (obligatoire), meta_description, meta_keywords, head_seo_title, link_rewrite (obligatoire) et content. Remarquez ce qui n'y figure pas : un champ séparé "libellé de menu" ou "nom de navigation". Cette colonne n'existe pas.

Cette seule absence résume tout le problème. Dans le flux standard Classic/natif de ps_linklist, le meta_title de la page CMS remplit trois rôles à la fois : il sert de titre de page, alimente le fil d'Ariane et devient le texte affiché par défaut pour tout lien vers cette page (les thèmes et modules peuvent remplacer chacun de ces comportements). Ainsi, lorsque le pied de page affiche un lien vers votre page, il lit meta_title et l'imprime tel quel. Il n'existe pas de second champ de repli. Raccourcissez le titre, et le menu devient plus propre, mais le titre de la page et le fil d'Ariane raccourcissent eux aussi ; allongez-le pour le SEO, et le libellé du pied de page gonfle. Vous modifiez une seule valeur que quatre surfaces différentes lisent toutes.

Vous pouvez le vérifier vous-même. Les colonnes de pied de page et de type "Informations" d'une boutique PrestaShop standard sont rendues par le module ps_linklist, et son présentateur (src/Presenter/LinkBlockPresenter.php) construit chaque lien CMS ainsi :

Ce que le pied de page afficheOù ps_linklist le récupère
Libellé du lien (le texte cliquable)$cms->meta_title, repris directement, sans remplacement
Info-bulle du lien (attribut title au survol)$cms->meta_description
URL du lien$cms->link_rewrite via getCMSLink()

Le long libellé dans le pied de page n'est donc pas un bug du thème ni une mauvaise configuration de votre part. C'est PrestaShop qui fonctionne exactement comme prévu : un lien de type CMS est câblé pour afficher le méta-titre de la page. Qu'est-ce que cela implique pour vous ? Toute approche qui "corrige" le menu en modifiant le titre de la page agit sur le mauvais champ, et dégrade discrètement votre SEO et vos fils d'Ariane au passage.

Le levier back-office qui existe déjà : les liens personnalisés

Back office « CMS Display Names » listant les pages CMS avec un champ de nom d'affichage court à côté de chaque méta-titre

Définissez un nom d'affichage court pour chaque page CMS ; il apparaît dans les titres, les menus et les liens de pied de page, tandis que le méta-titre reste intact pour le SEO.

Il existe aujourd'hui une façon d'obtenir un libellé de menu court avec PrestaShop natif, et presque personne ne la remarque parce qu'elle se trouve dans l'onglet juste à côté de celui que l'on consulte habituellement. Le module ps_linklist construit un bloc de liens à partir de deux types d'entrées :

  • Liens CMS / catégorie / produit, vous choisissez la page dans une liste déroulante. Le libellé est verrouillé sur le méta-titre de cet objet (le comportement décrit plus haut). C'est pratique, mais vous ne contrôlez pas le texte.
  • Liens personnalisés, vous saisissez manuellement un libellé et une URL. Ici, le libellé correspond exactement à ce que vous écrivez ; PrestaShop l'enregistre dans le champ custom_content du bloc et l'affiche tel quel.

Ce second type est l'échappatoire native. Au lieu d'ajouter votre page CMS via la liste déroulante CMS (qui hérite du titre long), vous l'ajoutez comme lien personnalisé : saisissez le libellé court que vous voulez réellement, "CGV", "Livraison", "Retours", puis collez l'URL front-office de la page dans le champ URL. La page reste inchangée. Son méta-titre demeure long et riche en mots-clés pour les moteurs de recherche et le H1 ; seul le pied de page affiche désormais "CGV".

Où le faire : dans le back-office, ouvrez le module Liste de liens/Widget de liens (ps_linklist), généralement accessible via Apparence → Liste de liens ou Modules → Gestionnaire de modules, selon votre version de PrestaShop et la configuration du menu d'administration. Ouvrez ou créez le bloc de liens correspondant à la colonne de pied de page souhaitée, Informations, Produits, Votre compte, ou une nouvelle colonne. Faites défiler au-delà des cases des pages CMS jusqu'à la section Contenu personnalisé, ajoutez une ligne, puis renseignez le champ Titre (votre libellé court) et le champ URL (l'URL de la page), avant d'enregistrer. Sur une boutique multilingue, vous définissez le libellé par langue, afin que "Returns" / "Retours" / "Zwroty" s'affichent chacun naturellement. Décochez ensuite cette page dans la liste des pages CMS au-dessus pour éviter qu'elle n'apparaisse deux fois.

La contrepartie est claire : un lien personnalisé est une entrée manuelle. Si vous modifiez plus tard le link_rewrite de la page (son slug d'URL), le lien personnalisé ne suivra pas automatiquement comme le ferait un lien de type CMS, vous devrez mettre l'URL à jour une fois. Pour les quelques pages légales et informatives qui restent dans un pied de page pendant des années, ce n'est pas un problème. Pour une boutique avec des dizaines de pages CMS réparties dans plusieurs menus, maintenir des liens personnalisés à la main ne tient plus la charge ; c'est précisément l'écart qu'un outil dédié vient combler.

Ne confondez pas cela avec head_seo_title, ils résolvent des champs différents

Puisque nous parlons de l'objet CMS : PrestaShop 1.7.5+ a ajouté le champ head_seo_title, et il est facile de croire qu'il s'agit du "libellé de menu" que vous cherchiez. Ce n'est pas le cas. head_seo_title permet à la balise <title> de l'onglet du navigateur de différer du meta_title affiché sur la page, vous pouvez donc avoir un H1 naturel pour un humain, tout en plaçant le mot-clé exact dans le <title> destiné à la SERP. C'est utile, mais cela concerne la couche titre/SERP, pas la navigation. Pour résumer les trois champs indépendants et ce que chacun alimente :

Champ CMSContrôleÀ modifier quand…
meta_titleH1 de la page + fil d'Ariane + libellé de lien par défautVous voulez définir le titre lisible de la page
head_seo_titleLa balise <title> dans la SERP / l'onglet du navigateurLe titre SEO doit différer du H1 visible
Libellé de lien personnalisé (ps_linklist)Le texte affiché dans une colonne de pied de page / de menuVous voulez un mot de navigation court, sans toucher au titre

Trois champs, trois surfaces. Si le problème du "long lien dans le pied de page" semble insoluble, c'est parce que les marchands essaient de corriger un symptôme de navigation en modifiant le champ titre, justement celui qui ne devrait pas changer.

Choisir de bons libellés de navigation une fois que vous pouvez les définir

Pouvoir définir un libellé court n'est que la moitié du gain ; le libellé lui-même doit mériter sa place. Quelques règles tiennent particulièrement bien dans les boutiques PrestaShop :

  • Un ou deux mots, dans le vocabulaire du client. "Retours", pas "Politique RMA". "Livraison", pas "Logistique". Un pied de page se parcourt du regard, il ne se lit pas. Tout ce qui exige un second coup d'œil est trop long.
  • Alignez le libellé sur l'intention du slug, pas sur ses mots exacts. Le libellé et l'URL n'ont pas besoin d'être identiques, mais ils doivent pointer vers la même idée. Un libellé "Livraison" sur une URL /delivery-and-returns fonctionne ; un libellé "Livraison" sur /privacy érode la confiance.
  • Gardez la même formulation dans chaque menu où la page apparaît. Si l'en-tête indique "Contact", le lien personnalisé du pied de page doit lui aussi afficher "Contact", pas "Nous joindre". Comme les liens personnalisés sont saisis à la main bloc par bloc, les écarts arrivent vite ; choisissez le mot une fois, puis réutilisez-le.
  • Regroupez plutôt que lister. Quatre pages légales n'ont pas besoin de quatre lignes dans le pied de page. Un bloc "Mentions légales" ou "Politiques" dans ps_linklist, avec les quatre pages dessous, garde le pied de page lisible, et chacune de ces quatre pages peut conserver un méta-titre long, distinct et utile pour la recherche.

Le bénéfice correspond à ce que les spécialistes UX appellent un indice informationnel : un visiteur doit pouvoir prévoir où mène un lien avant de cliquer. Des libellés clairs et prévisibles réduisent les clics erronés, les retours arrière et donnent au pied de page l'aspect d'un élément conçu volontairement, plutôt qu'auto-généré.

Quand la solution native ne suffit plus

La méthode des liens personnalisés est la bonne réponse pour une boutique avec quelques pages d'information stables. Elle montre ses limites dans trois situations, toutes fréquentes sur les catalogues PrestaShop plus larges :

  • De nombreuses pages CMS dans plusieurs menus. Chaque lien personnalisé est une entrée manuelle par bloc et par langue. Avec vingt pages CMS affichées dans un menu d'en-tête, un pied de page et une barre latérale, vous maintenez soixante libellés saisis à la main, et ils se désynchronisent dès qu'une URL change.
  • Vous voulez aussi un fil d'Ariane court. Un lien personnalisé ne change que le texte du menu. Le fil d'Ariane de la page lit toujours meta_title, si bien qu'un long titre légal produit toujours un long fil d'Ariane. PrestaShop natif ne fournit aucun champ pour séparer ces deux surfaces.
  • Vous voulez que le libellé vive avec la page. Les liens personnalisés vivent dans le bloc de liens, pas sur la page CMS. Si vous supprimez et recréez une page, ou si vous la déplacez entre des menus, le libellé ne la suit pas.

C'est l'écart que comble notre module CMS Display Names : il ajoute un vrai champ de nom d'affichage à la page CMS elle-même, afin que chaque page porte au même endroit son long méta-titre SEO et son libellé de navigation court. Qu'est-ce que cela change ? Vous définissez le libellé court une seule fois, sur la page, et chaque surface qui doit rester courte, menu, pied de page, fil d'Ariane, l'utilise automatiquement, tandis que le méta-titre reste long et riche en mots-clés pour les moteurs de recherche. Plus de liens personnalisés à maintenir bloc par bloc, plus de fil d'Ariane oublié, et rien à ressaisir lorsqu'une page change de menu. Pour une ou deux pages de pied de page, l'astuce native des liens personnalisés décrite plus haut convient parfaitement ; pour un catalogue rempli de pages CMS, faire voyager le libellé avec la page est ce qui rend l'ensemble maintenable.

La cohérence d'ensemble

Un libellé de navigation est un maillon d'une chaîne que le client lit comme un signal unique : l'URL, le libellé de menu, le titre de la page et le H1 doivent tous raconter la même histoire, même lorsque les mots exacts diffèrent. Un lien "Livraison", une URL /shipping-information, un H1 "Informations d'expédition & de livraison" et un titre SERP "Frais de livraison & délais | Boutique" sont des chaînes différentes qui pointent vers une même promesse, et cette cohérence indique au nouveau visiteur qu'il est arrivé au bon endroit.

Deux leviers liés se trouvent juste à côté de celui-ci. Si une colonne de pied de page a besoin de plus que des liens, un court texte, une bande d'icônes de paiement, une ligne promotionnelle, il s'agit de contenu plutôt que de navigation, et vous le placez avec des blocs HTML personnalisés plutôt qu'avec le titre CMS. Et comme l'apparence de vos menus dépend en partie du thème, la manière dont les pages CMS ressortent dans la navigation peut varier d'un thème à l'autre, un point à prendre en compte lorsque vous choisissez un thème PrestaShop.

Commencez par un audit. Ouvrez chaque menu de pied de page et d'en-tête, ainsi que tout endroit où une page CMS est liée, puis lisez les libellés comme le ferait un visiteur qui ne connaît pas votre boutique. Si un libellé demande plus qu'un coup d'œil pour être compris, ou passe sur une deuxième ligne, c'est le texte qui est mauvais, pas la page. Corrigez-le avec un libellé court de lien personnalisé lorsque vous avez peu de pages, ou avec un nom d'affichage au niveau de la page lorsque vous en avez beaucoup. Dans les deux cas, la règle reste la même : ne raccourcissez jamais un titre pour corriger un menu. Le titre et le libellé de menu ont deux rôles différents, même si PrestaShop fait comme s'ils n'en formaient qu'un.

Questions fréquentes

Pourquoi le titre complet de ma page CMS apparaît-il comme lien dans le pied de page ?

Parce que PrestaShop ne possède pas de champ "libellé de menu" séparé pour une page CMS. Dans le flux natif de ps_linklist, un lien de type CMS lit directement meta_title et l'affiche tel quel, le même champ qui alimente le H1 de la page et le fil d'Ariane. Il n'existe pas de second champ de repli ; un titre long et optimisé SEO produit donc un long libellé de pied de page. C'est un comportement prévu, pas un bug.

Puis-je obtenir un libellé court dans le pied de page sans raccourcir le titre de la page ?

Oui, utilisez un lien personnalisé ps_linklist au lieu d'un lien de type CMS. Dans le bloc Widget de liens, faites défiler jusqu'à la section Contenu personnalisé, saisissez le libellé court souhaité ("CGV", "Livraison") et collez l'URL front-office de la page, puis décochez cette page dans la liste CMS au-dessus afin qu'elle n'apparaisse pas deux fois. PrestaShop affiche votre libellé tel quel, et le méta-titre de la page reste long et riche en mots-clés.

head_seo_title ne résout-il pas déjà ce problème ?

Non, c'est une confusion fréquente. head_seo_title permet à la balise <title> de l'onglet du navigateur de différer du meta_title affiché sur la page, afin de placer le mot-clé exact dans le titre SERP tout en gardant un H1 naturel. Cela concerne la couche titre/SERP, pas la navigation. Ce champ ne change rien au libellé du pied de page ou du menu, qui continue de lire meta_title sauf si vous utilisez un lien personnalisé ou un champ de nom d'affichage.

Que devient mon lien personnalisé si je change le slug d'URL de la page ?

Il casse, sauf si vous le mettez à jour. Un lien personnalisé est une URL saisie à la main ; il ne suit donc pas une modification de link_rewrite comme le ferait un lien de type CMS, vous devrez modifier l'URL une fois. Pour quelques pages légales et informatives qui restent dans un pied de page pendant des années, ce n'est pas un problème ; pour un catalogue rempli de pages CMS réparties dans plusieurs menus, la maintenance manuelle des URL ne tient plus la charge, et c'est là qu'un champ de nom d'affichage au niveau de la page devient utile.

Un lien personnalisé raccourcit-il aussi le fil d'Ariane ?

Non. Un lien personnalisé ne change que le texte du menu. Le fil d'Ariane de la page elle-même lit toujours meta_title, si bien qu'un long titre légal produit toujours un long fil d'Ariane. PrestaShop natif n'a aucun champ pour séparer ces deux surfaces, c'est l'une des lacunes qu'un module de nom d'affichage dédié comble en permettant au libellé court d'alimenter aussi le fil d'Ariane.

Comment garder des libellés cohérents entre l'en-tête et le pied de page ?

Choisissez le mot une fois et réutilisez-le partout où la page apparaît. Comme les liens personnalisés sont saisis à la main bloc par bloc, l'écart est une erreur facile à commettre, l'en-tête affiche "Contact" tandis que le pied de page indique "Nous joindre". Gardez un ou deux mots dans le vocabulaire du client ("Retours", pas "Politique RMA"), alignez le libellé sur l'intention de l'URL et regroupez les pages légales liées sous un seul bloc "Mentions légales" plutôt que de lister quatre lignes séparées dans le pied de page.

Quand faut-il passer des liens personnalisés à un module de noms d'affichage ?

Lorsque l'approche manuelle ne tient plus la charge : beaucoup de pages CMS dans plusieurs menus et langues (soixante libellés saisis à la main pour vingt pages dans trois menus), le besoin de fils d'Ariane courts en plus des libellés de menu courts, ou l'envie que le libellé suive la page lorsqu'elle est déplacée ou recréée. Un module comme CMS Display Names ajoute le libellé à la page elle-même, afin que chaque surface courte l'utilise automatiquement pendant que le méta-titre reste long.

Guides associés

Tags : PrestaShop SEO UX
Partager cet article:
David Miller

David Miller

Fondateur, mypresta.rocks

David Miller est un spécialiste PrestaShop fort de plus de dix ans d'expérience concrète et le fondateur de mypresta.rocks, un studio de développement situé à Tychy, en Pologne. Il conçoit et maintient un catalogue de 152 modules PrestaShop, dont 21 suites « Revolution » couvrant le SEO, le checkout, la sécurité, la performance, le marketing, la recherche, le support et la gestion d'entrepôt, qui améliorent chaque jour de vraies boutiques, testés sur PrestaShop 1.7.8, 8.x et 9.x. Il assure également la maintenance de boutiques en production réalisant plusieurs millions de chiffre d'affaires annuel : son travail se juge donc sur des ventes réelles, pas sur des démos. Son expérience couvre l'ensemble du e-commerce. Performance, sécurité, SEO et marketing, et va au-delà de PrestaShop, jusqu'à WooCommerce, Shopify et les systèmes sur mesure. Sur le blog, il écrit sur la face technique de PrestaShop : ce que la plateforme fait vraiment, ce qui casse en production et quelles solutions tiennent dans la durée.

Commentaires

Aucun commentaire pour le moment. Soyez le premier !
Cet article vous a plu ?

Recevez nos derniers conseils, guides et mises à jour de modules dans votre boîte mail.

Vous pouvez vous désinscrire à tout moment. Vous trouverez pour cela nos informations de contact dans les conditions d'utilisation du site.

Chargement...
Retour en haut