Je parlais il n’y a pas longtemps des slugs dans WordPress et comment coder une fonction get_the_slug(). Il s’agit d’un identifiant URL-firiendly. L’idée est de le passer en argument dans l’adresse et d’écrire ensuite une rêgle pour la réécriture URL.
Je vous propose donc une fonction PHP qui crée facilement un slug à partir d’une chaine de caractères.
function generate_slug($str) { $maxlen = 42; //Modifier la taille max du slug ici $slug = strtolower($str); $slug = preg_replace("/[^a-z0-9\s-]/", "", $slug); $slug = trim(preg_replace("/[\s-]+/", " ", $slug)); $slug = preg_replace("/\s/", "-", $slug); return $slug; }
Voici quelques exemples:
- CecI EST un %^%$& &%& TITRE COMplexe^$)^*)&
- ceci-est-un-titre-complexe
- brochure-tarifs-offres-mobile.pdf
- brochure-tarifs-offres-mobilepdf
- <title>Untitled Document</title>
- titleuntitled-documenttitle