Vous avez probablement commencé à utiliser SPIP dans le jeu de caractères iso-8859-1
, qui correspond à l’intallation standard. Mais ce jeu est limité aux caractères occidentaux, et voilà que votre site doit devenir multilingue ; il est temps de passer à utf-8
. Pour en savoir plus, vous pouvez lire Voyage dans la tour de Babel du net.
Remarque : à ceux qui s’inquiéteraient des risques d’un tel changement : d’après mon expérience sur des sites comment www.spip.net ou www.monde-diplomatique.fr, personne ne s’est plaint. Cela signifie donc que les navigateurs qui ne sauraient pas lire l’utf-8
ne sont plus du tout en circulation. (Bien entendu, ce n’est peut-être pas le cas dans des applications très spécifiques.)
- Commencez par vérifier vos squelettes. Ceux-ci ne doivent en effet contenir aucun caractère accentué sous forme « brute » : il faut donc éliminer tous ces « é » des squelettes, et les remplacer par leur entité html, é
... il faut ensuite vérifier qu’ils contiennent bien, dans la partie <head>...</head>
, la ligne suivante :
<meta http-equiv="Content-Type" content="text/html; charset=#CHARSET">
- Procédez à une sauvegarde de la base de données. Selon la méthode habituelle, au format dump.xml
ou dump.xml.gz
.
- Convertissez la sauvegarde au format utf-8
.
Pour cela, installez le script ci-dessous dans le répertoire ecrire/
, puis ouvrez la page avec votre navigateur, et suivez les instructions (une nouvelle authentification ftp est nécessaire).
Vous pouvez suivre l’opération de conversion (qui peut durer plusieurs minutes sur un gros site !) en regardant le fichier ecrire/data/spip.log
: il doit se terminer par une mention « conversion effectuée ».
Si la conversion a fonctionné normalement (sans timeout), vous pouvez réimporter la base ecrire/data/dump-utf8.xml
. (N’ayez crainte : si le résultat ne vous convient pas, il sera toujours temps de réinstaller la sauvegarde dump.xml
.)
N. B. : si votre base de départ n’était pas en iso-8859-1
, les résultats seront imprévisibles, et sûrement pas très bons :)
- Configurez le site. Rendez-vous dans la configuration du site, partie « Gestion des langues », et indiquez à SPIP que le charset de la base est désormais utf-8
. (Cette option n’est disponible que si vous êtes en interface complète).
- Videz le cache. Il est impératif de vider le cache, sinon certains navigateurs n’arriveront pas à afficher des pages se présentant comme de l’utf-8
(d’après les nouveaux réglages de SPIP) mais contenant des caractères iso-8859-1
(encore présents dans les « vieux » fichiers cache).
Aucune discussion
Ajouter un commentaire
Avant de faire part d’un problème sur un plugin X, merci de lire ce qui suit :
Merci d’avance pour les personnes qui vous aideront !
Par ailleurs, n’oubliez pas que les contributeurs et contributrices ont une vie en dehors de SPIP.
Suivre les commentaires : |