Qu'est-ce qu'un slug d'URL ?
Un slug est la partie lisible d'une URL, dérivée d'un texte (titre, nom, catégorie), normalisée pour être sûre, courte et compatible avec les navigateurs et moteurs de recherche.
Les aspects essentiels d'une bonne slugification :
1 Composants ASCII sûrs
Minuscules, chiffres et séparateur standard (tiret).
2 Normalisation et nettoyage
Étapes typiques: baisser la casse, retirer la ponctuation et les espaces spéciaux, compacter les séparateurs.
3 Translittérations usuelles
Rendre les caractères non-ASCII en équivalents ASCII stables :
4 Contraintes techniques
Prendre en compte contraintes de système et SEO :
Problèmes classiques
Copier-coller de titres multilingues
Introduit des tirets typographiques (– —), NBSP ou caractères non translittérés dans le slug.
Tests unitaires qui échouent
Deux environnements slugifient différemment (Unicode, locale), les comparaisons ne correspondent pas.
Remplacements partiels
Un simple replace des espaces laisse underscores, accents, ou doublons de tirets.
Regex \s ou \w incomplètes
Selon le moteur, \w inclut l'underscore et des lettres accentuées, ce qui rompt la stratégie ASCII-only.
Exemple de problème courant :
Symptômes qui doivent vous alerter
🚨 Signaux d'alarme
Bien implémenter la slugification
✨ Solution recommandée : Clean ASCII
Clean ASCII propose une slugification fiable: translittération des accents, unification des tirets, suppression des caractères non-ASCII et génération d'un slug prêt pour la production.
✅ Slugification automatique
Minuscules, tirets, suppression de ponctuation, accents et NBSP
📊 Analyse complète
Visualisation des remplacements, longueur, collisions potentielles
🧹 Règles personnalisées
Mapping de translittération, stop-words, normalisation des tirets
💾 Export propre
Slug final prêt à intégrer dans vos routes ou votre base
Autres méthodes d'implémentation
Affichage dans l'éditeur
En ligne de commande (Unix)
En code
JavaScript
.normalize('NFKD')
.replace(/[^\w\s-]/g, '')
.replace(/[_]/g, ' ')
.toLowerCase()
.replace(/[–—−]/g, '-')
.replace(/\s+/g, '-')
.replace(/-+/g, '-')
.replace(/^-+|-+$/g, '');
// slugify("Café — prêt ?") => "cafe-pret"
Python
def slugify(s: str) -> str:
s = unicodedata.normalize('NFKD', s)
s = s.encode('ascii', 'ignore').decode('ascii')
s = s.lower()
s = re.sub(r'[–—−]', '-', s)
s = re.sub(r'[^a-z0-9]+', '-', s)
return s.strip('-')
# slugify("Straße & Café") -> "strasse-cafe"
Excel / Google Sheets
Nettoyer et prévenir
🚀 Génération rapide avec Clean ASCII
Avant d'écrire vos propres regex, utilisez Clean ASCII pour produire un slug immédiat et cohérent :
Méthodes techniques avancées
🔧 Normaliser
🧹 Filtrer
⚙️ Automatiser
Checklist rapide
Conclusion
Un bon slug rend vos URLs fiables, compréhensibles et durables. Une mauvaise normalisation crée des 404, des duplications et un SEO fragile.
Standardisez votre pipeline: translittération, unification des tirets, filtrage et anti-collisions. Vous gagnerez en stabilité et en référencement.
Générez des slugs propres maintenant
Utilisez notre outil pour transformer vos titres en slugs stables et compatibles SEO.
Slugifier mon texte