Magento 2: Diferentes arquivos de conteúdo estático por localidade?


15

No Magento 2, um URL de conteúdo estático se parece com isso

http://magento-2-with-keys.dev/static/adminhtml/Magento/science/en_US/Pulsestorm_FrontendTutorial1/hello.js

Isso inclui uma en_USparte do código do idioma. Isso implica fortemente que

  1. O Magento 2 permite criar diferentes arquivos de conteúdo estático por localidade
  2. Magento 2 processa arquivos de conteúdo estático para seqüências de caracteres local / gettext

Qual das alternativas acima é verdadeira? Ou ambos são verdadeiros? Ou não?

Como eu, como desenvolvedor do módulo Magento, forneço arquivos de conteúdo estático por localidade? Isso seria diferente se eu fosse um desenvolvedor de temas?

Respostas:


12

O Magento permite fornecer arquivos de ativos estáticos por localidade no módulo ou tema. Para fornecer esses arquivos localizados, coloque-os na web/i18n/<locale>pasta dentro do módulo ou tema. Esses arquivos têm prioridade acima dos arquivos não localizados.


como podemos fazer as mudanças no phtml? é possível, porque em alguns casos eu preciso adicionar ou remover algo no nível phtml; nesse caso, como fazê-lo e também o layout xml?
Pradeep Kumar

e também alguns dos meus variável personalizada ou menos arquivos também precisam ser alterados nesse caso como fazê-lo
Pradeep Kumar

3
Mesmo. Apenas arquivos phtml devem estar localizados em templatese layouts em layoutpastas. Para temas - este é o primeiro nível de diretórios, para módulos - ele deve estar abaixo view/<area>.
BuskaMuza

@BuskaMuza Sinto muito, mas tentei variações diferentes para XML e PHTML, mas não o fiz. Digamos que meu local seja ar_EG e desejo inserir um novo arquivo CSS default_head_blocks.xml. O arquivo é chamado de theme\Magento_Theme\layout... qual deve ser exatamente o URL da minha substituição?
Ahmad Alfy 17/03/16

2
default_head_blocks.xmlnão deve saber nada sobre localidade. Os caminhos para CSS devem ser referenciados em XML como <module>::css/<file>.css(para arquivo modular) ou css/<file>.css(para arquivo de tema). Se você colocar o arquivo CSS localizado dentro <modue>/view/<area>/web/i18n/ar_EG/css/<file>.cssou dentro <theme>/web/i18n/ar_EG/css/<file>.css, ele deve ser usado automaticamente para uma loja ar_EGescolhida como local.
BuskaMuza

1

Em vez de completar o arquivo separado para um idioma diferente, você pode estender o tema substituindo os arquivos padrão. No arquivo extends.less ou theme.less. Abaixo pode ser a estrutura a ser substituída.

yourtheme / web / i18n / yourlocale

Por exemplo :

aplicativo \ design \ front-end \ Magento \ luma_custom \ web \ i18n \ ar_KW \ css \ source_theme.less

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.