modern seo
Rédigez des slugs d'URL propres et lisibles
MetricSpot vérifie la longueur, les séparateurs et la lisibilité du slug. Les slugs propres (/guide-seo) battent les IDs (/page?id=123) en clics et en indexation.
Ce que vérifie ce contrôle
Analyse l’URL de la page auditée et inspecte le dernier segment du chemin (le « slug »). Le contrôle échoue lorsque le slug est :
- Un ID numérique ou un hash —
/posts/47391,/p?id=a8f3e2b0. - Trop long — plus de 60 caractères.
- Bourré de tirets bas au lieu de tirets —
/seo_guide_for_2026_complete. - Majoritairement des mots vides —
/quelle-est-la-meilleure-facon-de-faire-x. - Tout en majuscules ou en casse mixte —
/SEO-Guide,/seoGuide. - Contient des espaces ou des caractères spéciaux —
/SEO Guide.html,/SEO%20Guide.
Pourquoi c’est important
Les slugs propres ne sont pas qu’esthétiques — ils affectent le taux de clic, le classement et la partageabilité de façon mesurable.
- Taux de clic. Des études montrent constamment que les URL descriptives dans les résultats de recherche obtiennent 10 à 30 % de clics en plus que les IDs. Le slug s’affiche à côté du titre dans chaque SERP — il fait partie de votre accroche.
- Signal de classement. Google a confirmé que le slug d’URL est un facteur de classement (mineur). Les mots du slug qui correspondent à la requête sont mis en gras, comme le titre et la description.
- Partageabilité. Une URL qu’on peut lire est une URL qu’on peut retenir et donner à un collègue.
metricspot.com/docs/enable-hsts/est partageable ;metricspot.com/docs/?id=42891ne l’est pas. - Extraction par l’IA. ChatGPT, Perplexity et Google AI Overviews citent les slugs dans leurs sources. Un slug propre se lit comme une vraie source ; un ID se lit comme du contenu généré par machine.
Comment le corriger
Utilisez des slugs en minuscules, séparés par des tirets, riches en mots-clés et de moins de ~60 caractères.
Bon :
/docs/activer-hsts/
/blog/comment-fonctionne-https/
/tarifs/
/produits/ecouteurs-sans-fil-pro/
Mauvais :
/docs/47391/ (ID, sans sens)
/Docs/Activer_HSTS/ (majuscules, tirets bas)
/le-guide-complet-2026-pour-activer-hsts-sur-votre-site-etape-par-etape/ (trop long)
/docs/?id=hsts&v=2&from=blog (params de query pour des URL de contenu)
Règles.
- Tirets, pas tirets bas. Google traite les tirets comme des séparateurs de mots ; les tirets bas, non.
enable-hstscorrespond à « enable HSTS » ;enable_hstsse lit comme un mot collé. - Minuscules. Certains serveurs traitent
/Docs/Enable-HSTS/comme une URL différente de/docs/enable-hsts/— contenu dupliqué, signaux dispersés. Forcez tout en minuscules au niveau de la couche de redirection. - Élaguez les mots vides avec discernement.
/comment-fonctionne-https/convient./la-meilleure-facon-d-activer-https-sur-nginx-rapidement/sent le SEO de 2012. - Pas d’extensions de fichier.
/about.html,/post.php. Retirez-les ; redirigez les anciennes URL avec extensions vers la version propre. - URL stables. Une fois un slug publié et indexé, le changer vous coûte des backlinks. Choisissez bien la première fois. Si vous devez en changer un, mettez une redirection 301 depuis l’ancien.
WordPress — Settings → Permalinks → « Post name » donne par défaut des slugs propres. Pour chaque article, éditez le champ slug dans la meta-box URL avant de publier. Si vous changez un slug publié, installez Redirection pour que l’ancienne URL soit 301 automatiquement.
Astro — le routage par fichiers rend les slugs explicites. Nommez src/pages/docs/enable-hsts.astro et vous obtenez /docs/enable-hsts/. C’est tout.
Next.js — l’App Router utilise les noms de dossiers comme segments. app/docs/enable-hsts/page.tsx → /docs/enable-hsts/. Pour les routes dynamiques, générez les slugs au build depuis une source de contenu :
// app/blog/[slug]/page.tsx
export async function generateStaticParams() {
const posts = await getPosts();
return posts.map(post => ({ slug: post.slug }));
}
Générez les slugs par programme :
function slugify(title: string): string {
return title
.toLowerCase()
.normalize("NFD").replace(/[̀-ͯ]/g, "") // retire les accents
.replace(/[^a-z0-9\s-]/g, "") // retire la ponctuation
.trim()
.replace(/\s+/g, "-") // espaces → tirets
.replace(/-+/g, "-") // tirets répétés rassemblés
.slice(0, 60); // borne la longueur
}
slugify("Activer HSTS sur nginx & Apache");
// → "activer-hsts-sur-nginx-apache"
Ne changez pas un slug publié. Si vous le devez — migration de domaine, refonte — mettez une redirection 301 de l’ancien slug vers le nouveau et ajoutez-la à votre sitemap. Voir Gardez les chaînes de redirection courtes pour que les 301 se rassemblent en un seul saut.
Questions fréquentes
Faut-il inclure la date dans les slugs d’articles de blog ?
Optionnel. /blog/2026/05/activer-hsts/ rend le contenu evergreen daté quand un utilisateur clique trois ans plus tard. /blog/activer-hsts/ non. Si vous écrivez beaucoup d’actualités, les dates peuvent aider ; pour les guides evergreen, retirez-les.
Et les slugs non anglais ?
Pour les pages ciblant une langue spécifique, utilisez les mots de cette langue. /fr/docs/activer-hsts/ se classe mieux en recherche française que /fr/docs/enable-hsts/. Retirez les accents (activer, pas activé) — Google reconnaît toujours, et les caractères accentués cassent dans certains clients.
Le slug doit-il correspondre exactement au titre ?
Non — proche, pas identique. Le titre est une phrase complète avec mots vides et ponctuation ; le slug est le noyau dense en mots-clés. Titre : « Comment activer HSTS sur nginx et Apache (avec exemples de code) ». Slug : /activer-hsts/ ou /activer-hsts-sur-nginx-apache/.
Sources
Dernière mise à jour 2026-05-11