Jump to content

traductions partielles


Recommended Posts

Bonjour,

Dans un module développé par mes soins, les traductions ne sont que partiellement appliquées. Toutes les expressions traduites sont bien dans fr.php mais la majorité d'entre elles persiste à s'afficher en anglais. La langue admin est le français et c'est la seule langue utilisée. Des suggestions?

h

Link to comment
Share on other sites

Pour un module, le mieux est d'inclure sa propre version de la fonction l. Une version customisée qui va directement chercher les bonnes traductions dans le bon fichier.

eg:

    
public function l($string, $specific = false) {

  global $_MODULES, $_MODULE, $cookie;

  $id_lang = (!isset($cookie) || !is_object($cookie)) ? intval(Configuration::get('PS_LANG_DEFAULT')) : intval($cookie->id_lang);

  $file = _PS_MODULE_DIR_.$this->name.'mon_module/'.Language::getIsoById($id_lang).'.php';

  if (file_exists($file) && include_once($file))
     $_MODULES = !empty($_MODULES) ? array_merge($_MODULES, $_MODULE) : $_MODULE;

  if (!is_array($_MODULES))
     return (str_replace('"', '"', $string));

  $string2 = str_replace('\'', '\\\'', $string);
  $key = '<{mon_module}mon_theme>AdminMonModule_'.md5($string2);

  if (key_exists($key, $_MODULES))
     return str_replace('"', '"',stripslashes($_MODULES[$key]));
  else
     return str_replace('"', '"', $string);

}



Avec ça, plus de problemes. Sûr, la fonction peut être modifiée pour inclure les noms du module et du theme + le code iso (avec valeur par defaut) dans la liste des paramètres.

Link to comment
Share on other sites

Bon, je viens de trouver ce qui n'allait pas. Pour une raison qui m'échappe encore, les traductions n'étaient pas créées pour le thème sur lequel je travaillais.

Par exemple, pour le module 'blockwishlist', dans le fichier de traduction nl.php, j'avais :

$_MODULE['<{blockwishlist}prestashop>blockwishlist-ajax_4a84e5921e203aede886d04fc41a414b'] = 'Dit product van mijn verlanglijst verwijderen';


Il suffit de remplacer 'prestashop' par le nom du thème, et ça roule...

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...