Paolo a demandé :
J'étais sûr d'avoir vu il y a quelques temps de tes questions touchant le
syntaxe <:toto:> pour afficher des chaînes gardées dans des fichiers de
langues. Mais je ne retrouve plus ces messages dans le newsgroup. Mon
message hier à spip-user est, jusqu'à maintenant, demeuré sans réponse.
A part mettre des chaînes dans un fichier ecrire/lang/local_xx.php3 que
faut-il faire pour pouvoir utiliser de telles chaînes ? Faut-il mettre un
"include" dans un fichier php quelque part? Car chez moi en tout cas, cela
ne marche pas.
Thierry répond :
Je crois comprendre votre problème. Il faut créer un fichier local_xx.php3
pour CHACUNE des langues. Les lettres " xx " doivent être remplacé par
l'abréviation de la langue (ex. fr : local_fr.php3.)
Vous pouvez ensuite insérer dans vos squelettes des balises faisant
référence aux éléments traduits dans les fichiers local_xx.php3. Par exemple
:
Dans le squelette :
< :merci :>
Dans lang_fr.php3 (version française) :
'merci' => 'Merci à tous!',
Dans lang_en.php3 (version anglaise) :
'merci' => 'Thank you all!',
Pour créer un fichier langue_xx.php3, il suffit de copier le code php
ci-dessous dans un fichier vide et d'y ajouter ses propres éléments de
traduction. Vous pouvez ensuite sauvegarder ce fichier dans le dossier
ecrire/lang/ et le nommer selon la langue utilisée. Exemple : local_fr.php3.
IMPORTANT : il faut indiquer la langue du ficher en remplaçant les XX dans
la ligne " $GLOBALS['i18n_local_XX'] = array( "
Lisez bien les instructions en commentaires (qui suivent les //) pour plus
de détail.
<?php
// This is a SPIP language file -- Ceci est un fichier langue de SPIP
// You must copy and name this file according to the language it will use.
(i.e. lang_en.php3) -- Vous devez copier et nommer ce fichier selon la
langue utilisée. (ex. lang_fr.php3)
// Put this file the ecrire/lang/ folder. - Placez ce fichier dans le
dossier ecrire/lang/.
// You must replace XX by the language code of the language used in this
file. (i.e. i18n_spip_en) - Vous remplacer XX par le code de la langue
utilisée dans ce fichier. (ex. i18n_spip_fr)
// For example -- Par exemple : $GLOBALS['i18n_local_fr'] = array(
$GLOBALS['i18n_local_XX'] = array(
//
//0
// All items must be followed by a comma (,) except the last one. -- Tous
les éléments doivent être suivi d'une virgule (,) à l'exception du dernier.
'0_1' => 'Premier',
// You must use html code for special characters, such as characters with
accents). See:
http://hotwired.lycos.com/webmonkey/reference/special_characters/
// Il faut utiliser le code HTML pour les caractères spéciaux comme les
accents. Voir : http://www.allhtml.com/html/html6.php
// For example, to write 'élément' -- par exemple, pour écrire 'élément' :
'0_item' => 'élément',
//A
//B
//C
//D
//E
//F
//G
//H
//I
//J
//K
//L
//M
//N
//O
//P
//Q
//R
//S
//T
//U
//V
//W
//X
//Y
//Z
'z_end' => 'end' // The last item in the list must not be followed by a
comma. -- Le dernier item de la liste ne doit pas être suivi d'une virgule.
);
?>
J'espère que ça vous sera utile.
Cordialement,
Thierry Gagnon
http://thierrygagnon.com/