Dans un processus de déploiement, il est utile de gérer les traductions de chaînes de caractères dans le code, afin de pouvoir les déployer plus facilement.
Exemple avec cette fonction d'update à adapter en fonction de vos besoins :
/**
* Création d'une traduction
*/
function mespronos_tweaks_update_8005() {
$chaine = 'Forgotten password';
$traduction = 'Mot de passe oublié';
$storage = \Drupal::service('locale.storage');
$string = $storage->findString(['source' => $chaine]);
if ($string === NULL) {
$string = new \Drupal\locale\SourceString();
$string->setString($chaine);
$string->setStorage($storage);
$string->save();
}
$translation = $storage->createTranslation(array(
'lid' => $string->lid,
'language' => 'fr',
'translation' => $traduction,
))->save();
}
Pour un exemple réel, il sera plus pratique de passer par un tableau associatif (à deux dimensions si l'on veut importer plusieurs langues) qui sera parcouru par un ou deux foreach.
Ajouter un commentaire