Layouts são uma parte fundamental do eco sistema Magento e sobrescrever layout é uma parte fundamental para customização da plataforma. Com a nova versão Magento, isso não é diferente, algumas coisas foram alteradas e melhoradas em relação a sua versão anterior e agora temos à nossa disposição mais opções úteis para a manipulação dos layouts.
Antes de tentar sobrescrever layout é importante que você entenda um pouco sobre o conceito por de trás dos “layouts.xml”.
Entendendo o Layout
Se você está aqui apenas por exemplo e já está familiarizado com o Layout do Magento 2, pule esta seção.
Layout é uma estrutura de página, representada pela hierarquia de elementos, que pode ser: blocos e contêineres.
Tecnicamente, o layout é definido nos arquivos .xml. Arquivos que contêm declarações de elementos e instruções de manipulação diferentes.
Substituir um layout
Acima mencionados básicos são necessários para entender como substituir corretamente o layout do Magento 2.
O layout precisa ser apropriadamente substituído quando realizamos algum tipo de personalização, por exemplo, quando queremos que:
- Modificar argumentos do método
- Remover blocos e / ou recipientes
- Configurar atributos XML de blocos e contêineres
- Remover argumentos de bloco
- Modificar e suprimir a inclusão de alças
- Remova todas as instruções de manipulação declarando um arquivo de layout de substituição vazio
Substituindo um layouts da base
Para substituir o arquivo de layout base (layout fornecido pelo módulo), precisamos colocar um arquivo de layout com o mesmo nome no seguinte local:
/Namespace_Module/layout/override/base/layout.xml
Esses arquivos substituem o seguinte layout:
/view/frontend/layout/layout.xml
Layout do Tema
Para substituir o layout do tema (substituir um layout de tema pai), coloque um arquivo de layout com o mesmo nome no seguinte local:
theme_dir / Namespace_Module / layout / override / theme / Fornecedor / theme / layout.xml
Esses arquivos substituem os seguintes layouts:
parent_theme_dir / Namespace_Module / layout / layout.xml
Para substituir os arquivos de layout da página, use o nome do diretório “page_layout” em vez de “layout”.
Limpe o Cache
Limpe “esvazie” ou desabilite o cache enquanto estiver realizando as alterações.