x

Principaux chapitres

  1. LimeSurvey Cloud et LimeSurvey CE
  2. Guide de démarrage rapide - LimeSurvey 3.0+
  3. Installation de Limesurvey CE en Francais
  4. Comment concevoir une bonne enquête (guide)
  5. Commencer
  6. Administrer LimeSurvey
  7. Création et structure d'un questionnaire
  8. Paramètres de l'enquête
  9. Menu Enquête
  10. Structure de l'enquête
  11. Questions-introduction
  12. Groupes de questions - introduction
  13. Enquêtes - gestion
  14. Options de la barre d'outils d'enquête
  15. Enquête multilingue
  16. Moteur ExpressionScript - Guide de démarrage rapide
  17. Non catégorisé et fonctionnalités avancées
  18. Foire Aux Questions
  19. Dépannage
  20. Solutions de contournement et spécifiques
  21. Licence
  22. Journal des modifications de version
  23. Les greffons - avancé
 Actions

Traduction personnalisée

From LimeSurvey Manual

Cette page a peut-être été traduite automatiquement et peut contenir des erreurs. Afficher l'original en anglais · Améliorer cette traduction
This page is a translated version of the page Custom translation and the translation is 100% complete.

Introduction

Depuis LimeSurvey 5.4.0, vous pouvez disposer de votre propre traduction pour toutes les chaînes de texte dans toutes les langues incluses, grâce à un accès direct à votre base de données.

Ce système peut être utilisé si une traduction existante n’est pas compatible avec les besoins de votre activité.

Il doit être réservé à des cas spécifiques, car toute modification de texte au cœur de LimeSurvey nécessitera de nouveau une modification de votre base de données.

Vous pouvez en outre utiliser cette méthode pour traduire les chaînes spécifiques à un thème de questionnaire.

Fonctionnement des traductions en base de données

Pour les traductions en base de données, LimeSurvey utilise une méthode inspirée de CDbMessageSource du framework Yii.

  1. Rechercher la chaîne dans la table SourceMessage lime_source_message->message et récupérer l’identifiant : lime_source_message->id
  2. Si elle existe, rechercher la traduction associée dans la table Message lime_message->translation pour la langue courante lime_message->language avec l’identifiant courant lime_message->id

LimeSurvey crée le tableau des traductions à partir du fichier po (voir Traduire LimeSurvey pour savoir comment mettre à jour ce fichier), puis le fusionne avec toutes les traductions provenant de la base de données.

Les traductions de la base de données sont alors toujours renvoyées lorsqu’elles existent.

Exemple pour le bouton « Envoyer » en anglais et en français

Vous souhaitez afficher _Valider_ et non _Envoyer_ pour le bouton d’envoi dans tous vos questionnaires (avec un thème spécifique). Si vous modifiez simplement le thème et remplacez gT('Submit') par gT('Validate'), _Validate_ s’affichera toujours dans toutes les langues.

Pour tous les questionnaires avec tous les thèmes

  1. Créez le message source : INSERT INTO lime_source_message (id, category, message) VALUES (NULL, '', 'Submit');
  2. Vérifiez l’identifiant (s’il s’agit du premier, l’ID est 1) et utilisez-le pour l’instruction suivante
  3. Créez la traduction associée : INSERT INTO lime_message (id, language, translation) VALUES ('1', 'en', 'Validate'), ('1', 'fr', 'Valider');

Ne remplacez pas la chaîne par une chaîne vide, sinon la traduction reviendra à la phrase anglaise d’origine. Vous devez inclure au moins une espace.

Utiliser votre propre thème (solution recommandée)

Cette méthode utilise votre propre modèle ; elle met également à jour la chaîne par défaut pour toutes les autres langues.

  1. Dans l’Éditeur de thème, sélectionnez la partie Navigation
  2. Recherchez Template:GT("Submit") (dans navigator.twig)
  3. Remplacez par Template:GT("Validate")
  4. Créez le message source : INSERT INTO lime_source_message (id, category, message) VALUES (NULL, '', 'Validate');
  5. Vérifiez l’identifiant (s’il s’agit du premier, l’ID est 1) et utilisez-le pour l’instruction suivante
  6. Créez la traduction associée : INSERT INTO lime_message (id, language, translation) VALUES ('1', 'fr', 'Valider');

Remarque

Le champ category de lime_source_message doit être une chaîne vide (''), et non NULL. Si la catégorie ne correspond pas exactement, gT() ne trouvera pas le message source et votre traduction ne sera pas appliquée. Ceci est particulièrement important lors de l’ajout de traductions pour des chaînes spécifiques à un thème.