Zeichenfolgen, die ich unter "Übersetzung der Benutzeroberfläche" / admin / config / regional / translate übersetze, können von "Configuration Management" / admin / config / development / configuration für mich nicht exportiert werden. Vermisse ich etwas
Ich möchte diesen Prozess mit hook_update_N
oder automatisieren drush cim -y
.
Was ist ein geeigneter Weg, um "User Interface Translation" in Drupal 8 automatisch bereitzustellen?
- Soll ich es machen
hook_update_N()
? - Soll ich eine benutzerdefinierte
mytranslations.po
Datei im Sprachordner erstellen ?
Ich sehe, dass es locale_translate_batch_import_files()
welche gibt, die verwendet werden könnten.
8
i18n-l10n
deployment
melkowski
quelle
quelle
hook_update_N
. Schauen Sie sich @ Berdirs Vorschlag an.translation:sync
? Leider kann ich keine detaillierten Informationen zu diesem Befehl finden, aber vielleicht macht er das, wonach Sie suchen.Antworten:
Das musst du selbst machen. @rpayanm hat geantwortet, wo Sie es manuell tun können. Sie müssen sich den Code dort ansehen und beispielsweise Drush-Befehle implementieren, mit denen Sie ihn exportieren und erneut importieren können. Das zu automatisieren ist dann relativ einfach, exportieren, mit dem anderen Server synchronisieren und erneut importieren.
Sieht aus wie ein Projekt, das dabei hilft: Drush Language Commands .
Sie können Standardübersetzungen in ein Modul einfügen, diese werden jedoch nur importiert, wenn Sie dieses Modul installieren.
hook_update_N()
ist so konzipiert, dass es nur einmal ausgeführt wird, sodass Sie jedes Mal eine neue Funktion schreiben müssen, wenn Sie dies möchten (und Sie müssen sie immer noch zuerst exportieren).quelle
/admin/config/regional/translate/import
aufcore/modules/locale/src/Form/ImportForm.php
.Hilfsfunktion zum Hinzufügen benutzerdefinierter Übersetzungen:
Verwendung in einem Update-Hook:
quelle
Sie können die von Ihrer Site A verwendeten übersetzten Zeichenfolgen exportieren (admin / config / regional / translate / export) und sie dann auf der anderen Site importieren (admin / config / regional / translate / import).
quelle
hook_update_N
oder automatisierendrush cim -y
. Ich werde dies der Beschreibung hinzufügen.Es sieht so aus, als ob es auch möglich sein sollte, dies durch Schreiben eines Skripts zum Ausführen von Befehlen aus der Drush-Gebietsschemasynchronisierung zu tun , obwohl ich dieses Modul selbst nicht ausprobiert habe.
quelle
Wie aexl auf die Ausführungen zu der Frage erwähnt, können Sie das verwenden Benutzerdefinierte Übersetzungen Modul. Damit sollten Sie nur noch
drush locale-update
in Ihr Bereitstellungsskript aufnehmen müssen.quelle