Cursos Magento

Como criar um novo Layout XML no Magento 2

,

Atualizado em 20 de junho de 2022

O Front End do Magento é baseado em arquivos layout XML. Eles servem basicamente para estruturar como uma página deve ser entregue, e que componentes fazem parte dela.

No Magento 2: O Curso, tenho uma seção inteira sobre Layout XML. Mas hoje veremos especificamente como criar um novo layout xml. Nos próximos artigos desta série, você verá como estender um arquivo de layout existente e .

Criando um novo Layout

No Magento 2, você pode criar um novo layout dentro de um tema ou dentro de um módulo Magento. Siga esses passos para criar um novo layout:

Passo 1: crie o arquivo de layout

Para este exemplo, você pode chamá-lo de novo-layout.xml.

Se estiver criando ele dentro de um módulo, coloque-o em <pasta do seu módulo>/view/frontend/page_layout/novo-layout.xml.

No entanto, se estiver em um tema, coloque-o em <pasta do seu tema>/Magento_Theme/page_layout/novo-layout.xml.

<?xml version="1.0"?>
<layout xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:View/Layout/etc/page_layout.xsd">
    <update handle="empty"/>
    <referenceContainer name="page.wrapper">
        <container name="header.container" as="header_container" label="Page Header Container" htmlTag="header" htmlClass="page-header" before="main.content"/>
    </referenceContainer>
    <referenceContainer name="page.wrapper">
        <container name="page.top" as="page_top" label="After Page Header" after="header.container"/>
    </referenceContainer>
</layout>

Passo 2: declare seu novo layout

Isso é feito com a criação do arquivo layouts.xml.

Se estiver criando um módulo, defina ele em <pasta do seu módulo>/view/frontend/layouts.xml.

Se for um tema, <pasta do seu tema>/Magento_Theme/layouts.xml.

<?xml version="1.0" encoding="UTF-8"?>
<page_layouts xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:View/PageLayout/etc/layouts.xsd">
    <layout id="novo-layout">
        <label translate="true">Meu Novo Layout</label>
    </layout>
</page_layouts>

Lembre-se de definir um ID único para seu novo layout. Ele deve ser igual ao nome do arquivo criado no primeiro passo.

Passo 3: Limpe o cache e confira o resultado

Faça isso com bin/magento cache:clean ou usando a opção “Flush Magento Cache” no admin.

Se tudo estiver certo, seu novo layout será exibido nos seletores de layout. Como por exemplo em Lojas > Configurações > Web > Layouts Padrões.

Seletor de layout padrão com nova opção adicionada no nosso layouts.xml

No próximo artigo desta série, veremos como estender um layout existente.

Últimos posts por Ricardo Martins (exibir todos)
Comentários

Deixe seu comentário

[fbcomments url="https://www.magenteiro.com/blog/magento-2/criar-novo-layout-xml/"]