Anotações Magento 2: Configuração

Arquivos de configuração no Magento 2 agora são divididos por funções e significados, desta forma teremos um grande número de arquivos XML

Cada módulo possui um module.xml para declaração e um config.zml para configurações padrão e um event.xml para eventos e assim segue.

Esses arquivos XML tendem a ser pequenos e seguem uma sintaxe estrita validada usando um XSD.

Arquivos de configuração pre-definidos

* config.php
* config.xml
* di.xml
* events.xml
* routes.xml

Os arquivos de configuração são carregados apenas quando a configuração específica é requisitada.

Multiplas extensões podem declarar arquivos de configuração que afetam o mesmo tipo de configuração, esses arquivos são então mesclados.

Quando várias extensões possuem o arquivo events.xml a configuração é derivada mesclando todos os events.xml de todas as extensões.

Os arquivos de configuração propriamente do Magento são:

app/etc/config.php -> Contem a declaração de todos os módulos.

etc/events.xml -> Lista os observadores e os eventos em que eles estão inscritos

etc/routes.xml -> Lista as rotas e os roteadores

Há duas formas principais de armazenar valores de configurações:

Na Base de Dados ou em arquivos XML

Configuração de Sistema: core_config_data

Configuração XML: di.xml, config.xml, acl.xml, module.xml, widget.xml…

Para criar uma opção customizada para um módulo, criar um novo arquivo .xml e .xsd como por exemplo Magento/Catalog/etc/product_types.xml e product_types.xsd

Existem 3 escopos de configuração: global, frontend e admin

Se um arquivo de configuração é adicionado diretamente em etc/ os valores são globais

Para especificar um escopo, basta adicionar o arquivo de configuração em etc/frontend ou etc/adminhtml

Uma vez requisitados, os arquivos são carregados em estágios de acordo com os seguintes grupos:

Primary: Inclui apenas arquivos de configuração necessários para a inicialização do aplicativo e configuração de instalação específica.

Global: Inclui arquivos de configuração comuns de todas as areas de todos os módulos.

Area-specific: Arquivos que se aplicam em áreas especificas como adminhtml e o frontend.

Após a mesclagem de dois arquivos XML, o resultado possui todos os nodes dos arquivos originais.

O segundo arquivo XML, suplementa ou sobrescreve nodes no primeiro arquivo XML.

Cada arquivo de configuração é validado a partir de um schema especifico para o tipo de configuração.

Por exemplo, eventos configurados em events.xml são validados durante o carregamento com base no arquivo events.xsd

Os arquivos de configuração do Magento 2 estão localizados em Magento\Framework\Config

Grupo de classes para carregar configuração XML:

Config: Classe utilizada para obter acesso aos valores das configurações

Reader: Classe que é utilizada pra ler um arquivo, geralmente apenas encapsulando o nome do arquivo

SchemaLocator: Classe que encapsula o endereço para o schema.

Converter: Classe que converte XML para array

XSD file: O arquivo de Schema.

Arquivos de configuração podem opcionalmente ser validados antes e depois da mesclagem de um mesmo tipo de configuração.

Novos arquivos XML de configuração, devem estar acompanhados de um schemas XSD de validação.

Como o Magento 2 dm modo desenvolvedor os erros são retornados como “stack trace” permitindo verificar o patch da exceção e refinar o código.

Em outros modos apenas será exibida uma mensagem indicando que ocorreu um erro, mas o erro em si é gravado em um arquivo de log.

Para criar um novo tipo de configuração, é necessário criar:

* O arquivo XML de configuração
* O Arquivo XSD de schema de validação
* Loader

2017-01-24T20:23:11+00:00

RECEBA DICAS VALIOSAS NO SEU EMAIL

x