drupal: méthode standard pour créer un slug à partir d'une chaîne

Une limace sur ce contexte est une chaîne de caractères qu'il est sécuritaire d'utiliser comme identificateur, sur des adresses url ou des css. Par exemple, si vous avez cette chaîne:

I'd like to eat at McRunchies!

Son slug serait:

i-d-like-to-eat-at-mcrunchies

Je veux savoir si il y a un moyen standard de la construction de ces chaînes sur Drupal (ou php les fonctions disponibles à partir de drupal). Plus précisément, à l'intérieur d'un thème Drupal.

Contexte: je suis la modification d'un thème drupal donc le code html de l'noeuds, il génère comprennent leur taxonomie conditions que les classes css sur leur div contenant. La difficulté est, certains de ces termes " les noms ne sont pas valables les noms de classe css. J'ai besoin de "slugify".

J'ai lu que certaines personnes simplement faire ceci:

str_replace(" ", "-", $term->name)

Ce n'est pas vraiment suffisant pour moi. Il ne remplace pas les lettres majuscules avec downcase, mais plus important encore, ne pas remplacer les caractères non-ascii (comme à ou é) par leurs équivalents ascii. Il également ne pas supprimer "séparateur de chaînes" de début et de fin.

Est-il une fonction dans drupal 6 (ou le php libs) qui fournit un moyen de slugify une chaîne de caractères, et peut être utilisé sur un template.php fichier de un thème drupal?

source d'informationauteur kikito