Les chaînes que je traduis dans "Traduction de l'interface utilisateur" / admin / config / regional / translate ne sont pas exportables pour moi par "Gestion de la configuration" / admin / config / development / configuration. Suis-je en train de manquer quelque chose?
Je voudrais automatiser ce processus avec hook_update_N
ou drush cim -y
.
Quelle est la bonne façon de déployer automatiquement la "traduction de l'interface utilisateur" dans Drupal 8?
- Dois-je le faire en
hook_update_N()
? - Dois-je créer un
mytranslations.po
fichier personnalisé dans le dossier de langue?
Je vois qu'il y a locale_translate_batch_import_files()
ce qui pourrait être utilisé.
8
i18n-l10n
deployment
milkovsky
la source
la source
hook_update_N
. Jetez un œil à la suggestion de @ Berdir.translation:sync
? Malheureusement, je ne trouve aucune information détaillée sur cette commande, mais elle fait peut-être ce que vous recherchez.Réponses:
Vous devez le faire vous-même. @rpayanm a répondu où vous pouvez le faire manuellement, vous devrez y regarder le code, et par exemple implémenter des commandes drush qui vous permettront de l'exporter et de l'importer à nouveau. Automatiser cela est alors relativement facile, exporter, synchroniser avec l'autre serveur et réimporter.
Ressemble à un projet qui aide à ce qui existe: Drush Language Commands .
Vous pouvez placer des traductions par défaut dans un module, mais celles-ci ne sont importées que lorsque vous installez ce module.
hook_update_N()
est conçu pour ne s'exécuter qu'une seule fois, vous devrez donc écrire une nouvelle fonction chaque fois que vous le souhaitez (et vous devez toujours l'exporter en premier).la source
/admin/config/regional/translate/import
decore/modules/locale/src/Form/ImportForm.php
.Fonction d'assistance pour ajouter des traductions personnalisées:
Utilisation dans un hook de mise à jour:
la source
Vous pouvez exporter les chaînes traduites utilisées par votre site A (admin / config / regional / translate / export) puis les importer sur l'autre site (admin / config / regional / translate / import).
la source
hook_update_N
oudrush cim -y
. Je vais ajouter cela à la description.Il semble qu'il devrait également être possible de le faire en écrivant un script pour exécuter des commandes à partir de la synchronisation locale Drush , même si je n'ai pas essayé ce module moi-même.
la source
Comme l' aexl l'a mentionné dans les commentaires sur la question, vous pouvez utiliser le module Traductions personnalisées . Avec cela, vous devriez simplement avoir besoin d'inclure
drush locale-update
dans votre script de déploiement.la source