Parmi les bonnes méthodes de développement avec Drupal, il en existe une qui consiste à créer des modules compatibles à la traduction dans une autre langue. Si vous voulez participer à la communauté Drupal en partageant vos ressources, vous devrez obligatoirement créer votre module en anglais et par la suite le fichier de traduction associé.

apidrupalorg

La fonction qui permet de traduire une phrase avec Drupal est la fonction t( ). Dès que vous avez besoin d’afficher un message destiné à vos utilisateurs vous devez utiliser cette fonction.

Comment l’utiliser ? C’est très simple il vous suffit simplement de mettre votre phrase à l’intérieure de cette fonction.

Ce qu’il ne faut pas faire :

$output = "Thank you for your subscription!";

Ce qu’il est bon de faire :

$output = t("Thank you for your subscription!");

Comme je vous le disais plus haut vous devez écrire tout ce que vous allez afficher à vos utilisateurs en anglais puisque c’est le langage par défaut de Drupal, prenez-en l’habitude.

La fonction t () gère l’échappement de caractères, c’est-à-dire que vous n’avez pas besoin de mettre un slash ‘\’ avant chaque guillemet.

Ce qu’il ne faut pas faire :

$output = "Don\'t click me.";

Ce qu’il est bon de faire :

$output = t("Don't click me.");

Dans l’affichage de vos messages vous allez vite avoir besoin de retourner des valeurs à vos utilisateurs.

Ce qu’il ne faut pas faire :

$name = ‘Julien’;
$output = t("Welcome $name, you are now registered");

Ce qu’il faut faire :

$name = ‘Julien’;
$output = t("Welcome !name, you are now registered ", array('!name' => $name));

N’hésitez pas consulter la documentation sur la fonction t() disponible sur l’api Drupal.org

1 Response to Créez un module compatible pour la traduction.

Avatar

nyl auster

juillet 14th, 2009 at 9 h 26 min

A noter que apparemment dans Drupal 6 le hook menu passe automatiquement par la fonction t(). Peut être rajouter un exemple avec @ en plus de ! dans les placeholders de traduction ?

Comment Form



About me

about me

Bienvenue sur mon blog. Sur cet espace j’essaie de partager au mieux ma passion pour le web et actuellement mon engouement pour Drupal. Vous trouverez ici mes découvertes, mes problématiques et les solutions rencontrées.

I am going to DrupalCon London!

Commentaires

  • opi: Merci pour l'article, spécialement l'astuce du parcours d'un repertoire 'views', à la recherches d [...]
  • Julien: Il faut reconnaître quand même un avantage à Features, c'est de réunir en un seul module la poss [...]
  • Netmee: Super article. Je partage ta vision sur le coté plus light de cette solution face à Features. D'un [...]
  • Pascal H: Bonjour, je viens de découvrir Drupal et, quelques lectures plus tard votre blog. Félicitation [...]
  • Gilles: Merci pour cet article très intéressant. Je m'intéresse à l'externalisation de la saisi pour fa [...]