Slugify String

Transformez n'importe quel titre en un slug d'URL propre. Supprime les accents, choisit un séparateur, contrôle la casse et la longueur, retire éventuellement les mots vides et conserve l'Unicode.

Transformez un titre en un slug sûr pour les URL. Les accents sont réduits à l'ASCII simple, la ponctuation est supprimée et les mots sont joints par le séparateur choisi. Utilisez les options pour contrôler la casse, tronquer une longueur maximale ou retirer les mots vides courants.

Ce qui fait un bon slug d'URL

Pourquoi les slugs existent

Un slug est la partie lisible par un humain d'une URL qui identifie une page : le how-to-cache-resumes-in-redis dans /blog/how-to-cache-resumes-in-redis. Il remplace un identifiant numérique opaque par quelque chose que l'on peut lire, mémoriser et évaluer avant de cliquer. Les moteurs de recherche affichent l'URL dans les résultats, donc un slug descriptif rassure à la fois les lecteurs et renforce le sujet de la page.

Les règles qu'un slug doit respecter

Restez en minuscules avec des lettres ASCII, des chiffres et un seul séparateur. Cela évite trois catégories distinctes de problèmes : les URL sont sensibles à la casse dans leur chemin sur la plupart des serveurs, donc /About et /about sont des ressources différentes et un slug à casse mixte provoque des erreurs de contenu dupliqué. L'encodage en pourcentage rend tout caractère non-ASCII trois fois plus long et beaucoup plus difficile à lire une fois copié dans du texte brut. Et les espaces sont simplement interdits, devenant %20 ou +.

Les traits d'union sont le séparateur conventionnel. Google affirme depuis des années qu'il traite les traits d'union comme des séparateurs de mots et les tirets bas comme des lieurs de mots, ce qui signifie que cache_redis peut être lu comme un seul jeton tandis que cache-redis est clairement deux mots. Sauf raison particulière, choisissez le trait d'union.

Translittération versus conservation de l'Unicode

Par défaut, cet outil réduit les caractères accentués à leur équivalent ASCII le plus proche : é devient e, ß devient ss, ł devient l. Il procède en décomposant le texte avec la normalisation Unicode NFD et en supprimant les signes combinants, plus une table de correspondance pour les ligatures et lettres spéciales que la décomposition ne gère pas.

Conserver l'Unicode est une alternative légitime. Les URL internationalisées fonctionnent dans tous les navigateurs modernes et sont bien plus lisibles pour un locuteur de cette langue — un slug chinois ou russe translittéré en ASCII est généralement dépourvu de sens. Le coût est que l'URL brute contient des octets encodés en pourcentage, qui paraissent inquiétants une fois collés dans un e-mail ou un terminal, et certains outils anciens les corrompent encore. Activez Conserver les lettres Unicode si votre public lit l'écriture ; désactivez-le si le slug doit survivre à des systèmes arbitraires.

Longueur et mots vides

Il n'y a pas de limite technique qui justifie de s'en préoccuper, mais les slugs dépassant environ 60 caractères sont tronqués dans les résultats de recherche et deviennent difficiles à partager. La troncature se fait de préférence sur une frontière de mot plutôt qu'en plein milieu, ce que fait l'option de longueur ici.

Supprimer les mots vides — the, a, of, and — raccourcit un slug sans perdre grand-chose de son sens. C'est un choix esthétique plutôt qu'un facteur de classement ; les moteurs de recherche modernes sont parfaitement capables de les ignorer. Faites attention aux titres où un mot vide porte un sens, car les supprimer de « The Who » ou « Être ou ne pas être » détruit l'expression.

La stabilité compte plus que la perfection

Une fois qu'un slug est publié et lié, le modifier casse chaque lien entrant à moins d'ajouter une redirection. Un slug légèrement imparfait qui est en ligne depuis un an est presque toujours préférable à un plus propre qui vous coûte vos liens entrants. Décidez du format avant le lancement, puis laissez-le tel quel.

Note open-source : la translittération utilise la normalisation Unicode NFD ainsi qu'une petite table de ligatures, implémentée directement. Aucune bibliothèque tierce n'est utilisée.

FAQ

Traits d'union ou tirets bas ?
Traits d'union. Les moteurs de recherche traitent le trait d'union comme un séparateur de mots et le tiret bas comme un lieur de mots, donc les slugs à traits d'union sont analysés en mots distincts. Les tirets bas disparaissent aussi visuellement sous le soulignement que les liens portent par défaut.
Les slugs doivent-ils être en minuscules ?
Oui. La partie chemin d'une URL est sensible à la casse sur la plupart des serveurs, donc /About et /about peuvent résoudre vers deux pages différentes et scinder vos signaux de classement. Forcer les minuscules élimine toute cette catégorie de problèmes.
Puis-je utiliser des caractères non anglais ?
Oui, les navigateurs modernes les gèrent bien et ils sont bien plus lisibles pour les locuteurs natifs. L'inconvénient est que l'URL brute devient encodée en pourcentage, ce qui paraît bruyant hors d'un navigateur. Activez Conserver les lettres Unicode si cet arbitrage convient à votre public.
Quelle longueur un slug doit-il avoir ?
Assez long pour être descriptif, assez court pour se lire d'un coup d'œil. Environ trois à six mots, ou moins de 60 caractères, le garde entièrement visible dans la plupart des pages de résultats.
Dois-je supprimer les mots vides ?
En général c'est inoffensif et rend le slug plus propre, mais c'est un choix cosmétique sans bénéfice de classement. Ignorez-le quand un mot vide porte un sens, comme dans un nom de groupe ou une citation.
Est-il sûr de modifier un slug plus tard ?
Uniquement avec une redirection 301 depuis l'ancienne URL. Sans cela, vous perdez chaque lien et signet existant, ainsi que les signaux de classement accumulés. Fixez un format tôt et conservez-le.