As seqüências que eu traduzo em "Tradução da interface do usuário" / admin / config / regional / translate não são exportáveis por "Gerenciamento de configuração" / admin / config / development / configuration para mim. Estou esquecendo de algo?
Gostaria de automatizar esse processo com hook_update_N
ou drush cim -y
.
Qual é a maneira correta de implantar automaticamente a "Tradução da interface do usuário" no Drupal 8?
- Devo fazê-lo
hook_update_N()
? - Devo criar algum
mytranslations.po
arquivo personalizado na pasta de idiomas?
Eu vejo que existe locale_translate_batch_import_files()
qual pode ser usado.
8
i18n-l10n
deployment
milkovsky
fonte
fonte
hook_update_N
. Dê uma olhada na sugestão de @ Berdir.translation:sync
? Infelizmente, não consigo encontrar informações detalhadas sobre esse comando, mas talvez ele faça o que você está procurando.Respostas:
Você tem que fazer isso sozinho. O @rpayanm respondeu onde você pode fazê-lo manualmente, você precisará examinar o código e, por exemplo, implementar comandos drush que permitem exportar e importar novamente. A automação é relativamente fácil, exporta, sincroniza com o outro servidor e importa novamente.
Parece um projeto que existe: Drush Language Commands .
Você pode colocar traduções padrão em um módulo, mas elas são importadas apenas quando você instala esse módulo.
hook_update_N()
foi projetado para ser executado apenas uma vez; portanto, você precisará escrever uma nova função sempre que quiser executá-la (e ainda precisará exportá-la primeiro).fonte
/admin/config/regional/translate/import
oncore/modules/locale/src/Form/ImportForm.php
.Função auxiliar para adicionar traduções personalizadas:
Uso em um gancho de atualização:
fonte
Você pode exportar as strings traduzidas usadas pelo seu site A (admin / config / regional / translate / export) e depois importá-las para outro site (admin / config / regional / translate / import).
fonte
hook_update_N
oudrush cim -y
. Vou adicionar isso à descrição.Parece que também deve ser possível fazer isso escrevendo um script para executar comandos a partir da sincronização de localidade Drush , embora eu não tenha tentado esse módulo.
fonte
Como aexl mencionado nos comentários sobre a questão, você pode usar o personalizado Traduções módulo. Com isso, você só precisa incluir
drush locale-update
no seu script de implantação.fonte