Ich versuche, eine neue Geschäftsansicht für die tamilische Sprache zu erstellen, aber die Sprache wird bei der Auswahl der Sprache vom Administrator nicht aufgelistet.
kurze Beschreibung dessen, was ich getan habe
1) Ich habe Tamil Store View erfolgreich erstellt. Bitte beziehen Sie sich auf den Screenshot als einfache Referenz.
2) Als nächstes versuche ich, das Tamil Language Package hinzuzufügen
2.1 Sätze sammeln
Erstellen Sie den Ordner /var/www/html/magento2/app/i18n/tamil/tn_tn/
Führen Sie danach den folgenden Befehl aus und erhalten Sie eine Erfolgsmeldung
php bin/magento i18n:collect-phrases -o "/var/www/html/magento2/app/i18n/tamil/tn_tn/dictionary.csv" -m "/var/www/html/magento2/"
2.2 composer.json
{
"name": "tamil/tn"
,"type": "magento2-language"
,"description": "Tamil language"
,"authors": [{
"name": "Bilal Usean",
"email": "[email protected]",
"role": "Developer"
}]
,"extra": {"map": [["*", "tamil/tn_tn"]]}
}
2.3 language.xml
<?xml version='1.0'?>
<language xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance' xsi:noNamespaceSchemaLocation='urn:magento:framework:App/Language/package.xsd'>
<code>tn_TN</code>
<vendor>tamil</vendor>
<package>tn_tn</package>
</language>
2.4 register.php
<?php
\Magento\Framework\Component\ComponentRegistrar::register(
\Magento\Framework\Component\ComponentRegistrar::LANGUAGE,
'tamil_tn_tn',
__DIR__
);
2.5 Übersetzen
dictionary.csv enthält mehr als 8000 Phrasenzeilen für das Beispiel, das ich genommen habe ( offen in gedit ).
"We found other products you might like!","We found other products you might like!",module,Magento_Catalog
tn_TN.csv Ich habe über einer bestimmten Zeile übersetzt (enthält eine Zeile) ( offen in gedit )
"We found other products you might like!","நீங்கள் விரும்பக்கூடிய மற்ற பொருட்கள் காணப்படும் !",module,Magento_Catalog
2.6 Sprachpaket
Führen Sie den folgenden Befehl aus, um das Sprachpaket zu erstellen, und erhalten Sie eine Erfolgsmeldung Successfully saved tn_TN language package
.
php bin/magento i18n:pack -d app/i18n/tamil/tn_tn/tn_TN.csv tn_tn tn_TN
Es wird ein Verzeichnis erstellt (tn_tn pack)
<magento-root>/tn_tn/vendor/magento/module-catalog/i18n/tn_TN.csv
Jemand hat es bemerkt. Das Sammeln von Phrasen und Lang Pack-Befehlen unterscheidet sich vom offiziellen Dokument. Bitte beziehen Sie sich auf diesen Link , um zu erfahren, warum ich diese Methode so verwende.
Gesamtstruktur meines Sprachpakets
Führen Sie nach diesem leeren Cache setup: upgrade, indexer: reindex aus, aber ich kann mein Tamil Language Pack nicht in den neu erstellten Gebietsschemaoptionen für die Tamil Store-Ansicht finden .
Ich möchte noch eines erwähnen, ich habe über das vorhandene Lang-Pack /var/www/html/magento2/vendor/magento/language-de_de
(composer.json, language.xml, registration.php) recherchiert , konnte aber den genauen Namen des Gebietsschemas nicht finden, wie in admin (Deutsch) aufgeführt. Also habe ich jeden Schritt verwirrt, den ich verpasst habe, um das Gebietsschema zu erstellen.
Warum wird das tamilische Sprachpaket nicht installiert?
quelle
Antworten:
Schritt 1: Sammeln Sie die Sätze
Zuerst müssen Sie die Sätze herausfinden, die Sie übersetzen müssen.
Sie können dies tun, indem Sie Folgendes ausführen:
Beachten Sie, dass dies
vendor
dasselbe ist wie beim Entwickeln des Moduls undlg_lg
der Lang-Code Ihrer Sprache ist.Schritt 2: Erstellen Sie die
composer.json
DateiGehen Sie zu Ihrem
app/i18n/vendor/lg_lg
Ordner und erstellen Sie diecomposer.json
Datei:Schritt 3: Erstellen Sie die
language.xml
DateiNoch in Ihrem
app/i18n/vendor/lg_lg
Ordner müssen Sie einelanguage.xml
Datei erstellen :Schritt 4: Erstellen Sie die
registration.php
DateiSie müssen sich noch im selben Ordner befinden und eine
registration.php
Datei erstellen :Schritt 5: übersetzen
Noch in Ihrem Ordner können Sie Ihre Übersetzungen in eine
lg_lg.csv
Datei schreiben, die auf dem Wörterbuch basiert, das Sie in Schritt 1 abgerufen haben. Sie können den offiziellen Leitfaden verwenden, um die Übersetzungsrichtlinien zu befolgen: http://devdocs.magento.com/guides/v2. 0 / config-guide / cli / config-cli-Unterbefehle-i18n.html # config-cli-Unterbefehle-xlate-dict-transSchritt 6: Erstellen Sie das Sprachpaket
Führen Sie den folgenden Befehl aus:
Wichtige Notiz
Damit dies funktioniert, muss Ihr CSV-Dateiname genau mit dem Gebietsschema übereinstimmen, einschließlich der Groß- und Kleinschreibung der Zeichen.
Offizielle Dokumentation: http://devdocs.magento.com/guides/v2.0/config-guide/cli/config-cli-subcommands-i18n.html#config-cli-subcommands-xlate-example2
quelle
var/generation
,var/cache
und zu entfernenvar/di
?In Tamil müssen Sie ISO- Code und internationalen Code für Tamil ta_IN (Tamil ta / INDIA - IN ) hinzufügen. https://www.w3schools.com/tags/ref_language_codes.asp https://www.w3schools.com/tags/ref_country_codes .asp
und Sie müssen diesen Code im
vendor/magento/framework/Locale/config.php
Verzeichnis hinzufügenAnschließend installieren Sie mit dem Befehl " php bin / magento setup: static-content: deploy -f ta_IN ".
hoffe es wird funktionieren
quelle
Sie können der Option Allgemeines Gebietsschema keine neue Sprache hinzufügen
Der Grund dafür ist, dass Magento die PHP- Intl- Bibliothek verwendet, um das Auswahlfeld zu füllen
siehe folgende Datei
quelle
Hier finden Sie eine schrittweise Anleitung zum Erstellen eines Sprachpakets.
Führen Sie aus
i18n:collect-phrases
, um alle zu übersetzenden Sätze zu sammeln:Ein Beispiel:
Schritt 2
Erstellen Sie eine Magento 2-Erweiterung für das Sprachpaket.
Schritt 2.1
Erstellen Sie eine composer.json- Datei. Ein Beispiel aus dem Kern:
Mein Komponist.json :
Schritt 2.2
Erstellen Sie eine language.xml- Datei.
Ein Beispiel aus dem Kern:
magento / magento2 / blob / 2.0.0 / app / i18n / magento / de_de / language.xml
Meine language.xml :
Schritt 2.3
Erstellen Sie eine registration.php Datei.
Ein Beispiel aus dem Kern:
magento / magento2 / blob / 2.0.0 / app / i18n / magento / de_de / register.php
Ich benutze eine universelle
registration.php
66 .Schritt 3
Installieren Sie die Erweiterung
Schritt 4
Machen Sie die eigentliche Übersetzung und halten Sie Ihre Erweiterung auf dem neuesten Stand. Weitere Lokalisierungsthemen finden Sie unter: https://mage2.pro/tags/localization
Quelle.
quelle
Schritt 1: Erstellen Sie die Datei composer.json wie folgt
Schritt 2: Erstellen Sie die Datei language.xml wie folgt
Schritt 3: Erstellen Sie die Datei registration.php wie diese
Schritt 4: Nun die übersetzte Datei platzieren tn_TN.csv in / app / i18n / Tamilisch / tn_tn Verzeichnis
quelle
php bin/magento setup:upgrade
... danach öffne/app/etc/config.php
und überprüfe den Wert vontamil_tn_tn
be 1