Mise à jour bilingue complète (français/anglais) du Panneau d'Administration - Version imprimable +- MyBB.support, le portail francophone de MyBB (https://mybb.support) +-- Forum : Traduction francophone (https://mybb.support/forum-7.html) +--- Forum : Anciennes versions (https://mybb.support/forum-24.html) +--- Sujet : Mise à jour bilingue complète (français/anglais) du Panneau d'Administration (/thread-353.html) |
Mise à jour bilingue complète (français/anglais) du Panneau d'Administration - spyto - 26-06-2007 Bonjour, Une partie importante de l’admin a été traduite par Le Poulpe dans : /inc/languages/french/admin/*.php Mais tout n’est pas traduit. Les deux tables "settings" et "settinggroups" sont par défaut en anglais. Dans mon pack complet, j’avais traduit l’admin de façon à l’avoir entièrement en français. Cependant, il n’était plus possible de rebasculer vers l’anglais… En regardant de plus près le fichier "/inc/languages/french/admin/settings.lang.php", je me suis rendu compte qu'il est tout à fait possible d'y insérer les settinggroups et les settings ! Voici la règle édictée par les auteurs: * Translation instructions for settings and setting groups: * * Groups: * * Obtain the group name (not title) from the edit group page. * * Add language variables in the following format: * $l['setting_group_{name}'] = "Group Name Here"; * $l['setting_group_{name}_desc'] = "Group Description"; * * Ex: * $l['setting_group_general'] = "General Settings"; * $l['setting_group_general_desc'] = "Description of general settings here"; * * Settings: * * Obtain the setting name from the edit seting page. * * Add language variables in the following format: * $l['setting_{name}'] = "Setting Name Here"; * $l['setting_{name}_desc'] = "Setting Description"; * * Ex: * $l['setting_bbname'] = "Board Name"; * $l['setting_bbname_desc'] = "Description for board name here"; * Oui, mais au vu la quantié de données à saisir, il est impensable de le faire manullement, ce serait un travail colossal ! De là m'est venue l'envie d'essayer de confier cette lourde tâche à PHP. Le principe du script: 1. Je fais une copie de sécurité des deux fichiers concernés: - /inc/languages/french/admin/settings.lang.php => settings.lang.php.bak - /inc/languages/english/admin/settings.lang.php => settings.lang.php.bak 2. Je stocke le contenu du fichier dans une variable $filecontents. 3. Je supprime de cette chaîne la balise de fin PHP : '?>' 4. A partir du fichier 'settings_fr.xml', je récupère les settinggroups et settings que je stocke dans une chaîne $newcontents sous la forme adéquate: "$l['truc'] = 'machin chouette';\n" comme indiqué plus haut. 5. Je concatène: $newfilecontents=$filecontents.$newcontents."\n?>"; 6. J'écrase le fichier original 'settings.lang.php' en y mettant ce nouveau contenu. 7. Je répète la procédure pour la partie admin anglaise. Installation et utilisation: 1. Copiez le fichier "modify_settings_lang.php" dans le dossier /install de votre forum. 2. Copiez les fichier "settings_fr.xml" et "settings_en.xml" dans le dossier /install/resources de votre forum 3. Lancez le script /install/modify_settings_lang.php Au premier écran, vous aurez tous les détails. Cliquez sur le bouton "Suivant". Laissez-vous guider… Si tout se passe bien, allez dans l’ACP, à la rubrique "Préférences Panneau de Contrôle (Global)" puis basculez la langue de l’ACP, ça marche ! (enfin, ça devrait…) Pour que la partie latérale de l'ACP (celle qui contient les menus) soit mise à jour, il faut rafraîchir la page du navigateur... je n'ai pas trouvé de fonction qui le fasse automatiquemet... Information: Par mesure de sécurité, le script fait d'abord une copie (nom_du_fichier.bak) des deux fichiers en cas d'erreurs... Si ça n'a pas donné le résultat escompté, il ne vous reste plus qu'à récupérer les deux fichiers .bak et à les renommer. Dernier détail : je n'ai pas testé mon script "en-ligne", je n'ai testé qu'en "local" sous EasyPHP 1.8. EDIT (30-06-07): Je viens de le tester en ligne c'est OK !! Ce script n'est pas seulement utile pour ceux qui voudraient retourner à la langue de Shakeaspeare mais il peut aussi être utilisé par ceux qui n'auraient pas encore francisé complètement leur board... L'archive jointe contient! - le script "modify_settings_lang.php" - les 2 fichiers .xml - un fichier info.doc récapitulant toutes les infos nécessaire. Merci de bien vouloir tester et de me reporter les éventuels bugs... En plus du backup fait par le script, vous pouvez aussi, par mesure de sécurité complémentaire, télécharger sur votre PC les 2 fichiers originaux concernés par la modification !... On n'est jamais trop prudent ! @+ Spyto RE: Mise � jour bilingue complète (français/anglais) du Panneau d'Administration - Alex131089 - 11-07-2007 Cette solution de traduction le plait plus =) Par contre, je n'arrive pas a la faire fonctionner Le parseur XML retourne FALSE (mais le parseur est chargé, il n'arrive pas a lire le XML), et donc : Code : Warning: Invalid argument supplied for foreach() in C:\Serveur\http\forum\install\modify_settings_lang.php on line 194 Edit : testé sur MyBB 1.2.9 |