Estou tentando criar uma nova exibição de loja para o idioma tâmil, mas o idioma não é listado ao escolher o idioma do administrador.
breve descrição do que eu fiz
1) Criei com sucesso o Tamil Store View. Consulte a captura de tela para sua referência fácil.
2) Em seguida, estou tentando adicionar o Tamil Language Package
2.1 frases coletadas
crie a pasta /var/www/html/magento2/app/i18n/tamil/tn_tn/
Depois disso, execute o comando abaixo e receba uma mensagem de sucesso
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 compositer.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 registration.php
<?php
\Magento\Framework\Component\ComponentRegistrar::register(
\Magento\Framework\Component\ComponentRegistrar::LANGUAGE,
'tamil_tn_tn',
__DIR__
);
2.5 Traduzir
dictionary.csv contém mais de 8000 linhas de frases para a amostra que eu peguei uma ( aberta no gedit )
"We found other products you might like!","We found other products you might like!",module,Magento_Catalog
tn_TN.csv Traduzi acima de uma linha específica (contém uma linha) ( aberta no gedit )
"We found other products you might like!","நீங்கள் விரும்பக்கூடிய மற்ற பொருட்கள் காணப்படும் !",module,Magento_Catalog
2.6 Pacote de idiomas
execute o comando abaixo para criar o pacote de idiomas e receba uma mensagem de sucesso Successfully saved tn_TN language package
.
php bin/magento i18n:pack -d app/i18n/tamil/tn_tn/tn_TN.csv tn_tn tn_TN
Ele criará o diretório (pacote tn_tn)
<magento-root>/tn_tn/vendor/magento/module-catalog/i18n/tn_TN.csv
alguém notou, as frases coletar e os comandos do pacote lang são diferentes do documento oficial; consulte este link para saber por que estou usando dessa maneira.
Estrutura geral do meu pacote de idiomas
Após esse cache limpo, execute setup: upgrade, indexer: reindex, mas não consigo encontrar meu pacote de idiomas Tamil na loja Tamil recém-criada , exibir as opções de localidade.
Gostaria de mencionar mais uma, pesquisei sobre o pacote lang existente /var/www/html/magento2/vendor/magento/language-de_de
(compositer.json, language.xml, registration.php), mas não consegui encontrar o nome exato do código do idioma listado em admin (alemão (Alemanha)). Então, confundi qualquer etapa que perdi para criar a localidade.
por que o pacote de idiomas tâmil não é instalado?
fonte
Respostas:
Etapa 1: colete as frases
Primeiro, você precisa descobrir as frases que precisa traduzir.
Você pode fazer isso executando:
Observe que
vendor
é o mesmo de quando você desenvolve o módulo elg_lg
é o código lang do seu idioma.Etapa 2: criar o
composer.json
arquivoVá para a sua
app/i18n/vendor/lg_lg
pasta e crie ocomposer.json
arquivo:Etapa 3: criar o
language.xml
arquivoAinda na sua
app/i18n/vendor/lg_lg
pasta, você precisa criar umlanguage.xml
arquivo:Etapa 4: criar o
registration.php
arquivoAinda na mesma pasta, você precisa criar um
registration.php
arquivo:Etapa 5: traduzir
Ainda na sua pasta, você pode começar a escrever suas traduções em um
lg_lg.csv
arquivo com base no dicionário recuperado na etapa 1. Você pode usar o guia oficial para seguir as diretrizes de tradução: http://devdocs.magento.com/guides/v2. 0 / config-guide / cli / config-cli-subcomandos-i18n.html # config-cli-subcomandos-xlate-dict-transEtapa 6: criar o pacote de idiomas
Execute o seguinte comando:
Nota importante
Para que isso funcione, o nome do arquivo .csv deve corresponder exatamente ao código do idioma, incluindo o caso dos caracteres.
Documentação oficial: http://devdocs.magento.com/guides/v2.0/config-guide/cli/config-cli-subcommands-i18n.html#config-cli-subcommands-xlate-example2
fonte
var/generation
,var/cache
evar/di
?em Tamil você deve adicionar código iso e código internacional para Tamil ta_IN (Tamil- ta / ÍNDIA - IN ) https://www.w3schools.com/tags/ref_language_codes.asp https://www.w3schools.com/tags/ref_country_codes .asp
e você precisa adicionar esse código no
vendor/magento/framework/Locale/config.php
diretórioentão você instala usando o comando " php bin / magento setup: static-content: deploy -f ta_IN "
espero que funcione
fonte
Você não pode adicionar novo idioma na opção Localidade geral
A razão é porque o magento usa a biblioteca php intl para preencher a caixa de seleção
veja o seguinte arquivo
fonte
Aqui está um guia passo a passo para criar um pacote de idiomas.
Corra
i18n:collect-phrases
para coletar todas as frases a serem traduzidas:Um exemplo:
Passo 2
Crie uma extensão Magento 2 para o pacote de idiomas.
Etapa 2.1
Crie um arquivo composer.json . Um exemplo do núcleo:
Meu compositer.json :
Etapa 2.2
Crie um arquivo language.xml .
Um exemplo do núcleo:
magento / magento2 / blob / 2.0.0 / app / i18n / magento / de_de / language.xml
Meu idioma.xml :
Etapa 2.3
Crie um arquivo registration.php .
Um exemplo do núcleo:
magento / magento2 / blob / 2.0.0 / app / i18n / magento / de_de / registration.php
Eu uso um 66 universal
registration.php
.etapa 3
Instale a extensão
Passo 4
Faça a tradução real e mantenha sua extensão atualizada. Veja outros tópicos de localização: https://mage2.pro/tags/localization
Fonte.
fonte
Etapa 1: Crie o arquivo composer.json assim
Etapa 2: Crie o arquivo language.xml como este
Etapa 3: Crie o arquivo registration.php como este
Passo 4: Agora coloque o arquivo traduzido tn_TN.csv na / app / i18n / / tamil tn_tn diretório
fonte
php bin/magento setup:upgrade
... depois que se abrem/app/etc/config.php
valor e verificação detamil_tn_tn
ser 1