Quand cette option est fixée à 1, les caractères accentués dans les noms de pages seront remplacés par leur équivalent ASCII non accentués. Par exemple, à deviendra a, ç deviendra c.
Quand l’option est fixée à 2, la romanisation des noms de page est activée : les symboles des alphabets non latins seront remplacés par leur équivalent ASCII le plus proche.
Une valeur de 0 désactive totalement ces transformations.
0-2)1Si des utilisateurs ont créé des pages avec des accents avec l'option deaccent à 0, le résultat est illisible dans l'url : les “é” sont transformés en ”%C3%A8” etc.
Si vous passez alors l'option deaccent à 1 ou 2, tout les liens vers ces pages sont morts. Pour arranger cela, vous pouvez renommer les noms de fichiers à la main (long, fastidieux, risques d'erreurs…) ou utiliser un script directement sur le serveur (dans chacun des répertoire) :
<?php /* Ce script transforme les noms de tous les fichiers d'un répertoire encodés en utf-8 en des noms de fichiers sans caractères accentués */ if ($handle = opendir('.')) { //ouvre le répertoire while (false !== ($file = readdir($handle))) { // parcours le répertoire if ($file != "." && $file != "..") { // vérifie qu'il y a encore un fichier a traiter $decode = urldecode($file); // enlève les % $decode = utf8_decode($decode); // récupère un caractère ascii potable $decode = stripAccents($decode); //vire les accents rename($file, $decode); //change le nom du fichier echo "$decode<br/>"; //écrit son nouveau nom à l'écran } } closedir($handle); //ferme le répertoire } function stripAccents($string){ return strtr($string,'àáâãäçèéêëìíîïñòóôõöùúûüýÿÀÁÂÃÄÇÈÉÊËÌÍÎÏÑÒÓÔÕÖÙÚÛÜÝ', // chaîne entrée pleine d'accents 'aaaaaceeeeiiiinooooouuuuyyAAAAACEEEEIIIINOOOOOUUUUY'); // sortie propre } ?>