Ich weiß, dass dieses Problem in diesem Forum mehrmals behandelt wurde
Magento2-Lokalisierung Javascript
Magento 2 - Übersetzungsproblem in JS-Vorlagen
Magento2 übersetzt Javascript (KO) -Vorlagentext
Ich habe das italienische Sprachpaket in meinem Magento 2.1.9-Projekt installiert und die meisten Zeichenfolgen sind korrekt übersetzt.
Ich habe meinem Thema ein neues Übersetzungswörterbuch hinzugefügt.
vendor/<Vendor>/<Theme>/i18n/it_IT.csv
Hier habe ich einige Übersetzungen geändert und die neuen Zeichenfolgen meines Themas zum Übersetzen hinzugefügt. Für Zeichenfolgen, die in HTML-Dateien enthalten sind, funktioniert alles einwandfrei.
Ich habe einige benutzerdefinierte Zeichenfolgen in Knokout-Vorlagen der Kasse hinzugefügt. Zum Beispiel in
<My-theme>/Magento_Checkout/web/template/authentication.html
Ich fügte hinzu
<span data-bind="i18n: 'Do you already have an account?'"></span>
Dann in meinem Thema it_IT.csv:
"Do you already have an account?","Hai già un account?"
Natürlich habe ich den Cache, pub / static / , var / view_preprocessed / , var / generation usw. geleert und alle Befehle ausgeführt.
Die Saiten sind noch in Englisch.
Ich muss wirklich ein neues Sprachpaket erstellen, um ein paar Zeichenfolgen an der Kasse zu übersetzen. Was ist der Grund?
BEARBEITEN Online-Übersetzungen funktionieren für alle Zeichenfolgen. Es kann eine Möglichkeit sein, es vorübergehend zu beheben, aber nicht die endgültige Lösung.
quelle
Antworten:
Sie müssen ein Sprachpaket erweitern. Das Erstellen einer Übersetzungsdatei im Thema reicht nicht aus.
Dieses Erweiterungsmodul muss enthalten:
composer.json
language.xml
registration.php
Und natürlich Datei mit Übersetzungen in die gewünschte Sprache.
quelle
Eine alternative Lösung (die wir schließlich übernommen haben) besteht darin, Übersetzungsdateien in ein Modul anstatt in das Thema aufzunehmen.
Seltsamerweise können die Module csv die js-Zeichenfolgen leicht übersetzen.
Erstellen Sie ein neues Modul mit:
composer.json
etc / module.xml
und hier werden wir alle unsere Sprachdateien hinzufügen:
i18n / it_IT
i18n / de_DE
..
Wir haben dieses System gewählt, weil das Projekt, an dem wir arbeiten, viele Sprachen hat und wir nicht zu viele Sprachpakete aufnehmen wollten.
Beachten Sie, dass dies nur für neue Zeichenfolgen funktioniert, da Magento den Sprachpaketübersetzungen Vorrang einräumt. Aber das ist eine andere Geschichte.
quelle