Vamos criar um tema filho para que todos os nossos temas personalizados no Magento 2 cheguem aqui:
app / design / frontend / nome_empresa / nome_da_ tema
Vamos supor que o nome da nossa empresa seja minhaempresa e o nome do nosso tema seja básico. Precisamos criar a seguinte estrutura de diretórios para o nosso tema:
app
└────design
└──────frontend
└──mycompany
└───basic
└──etc
└──Magento_Theme
│ └─layout
│ default.xml
└──media
│ preview.png
└──web
│ └─css
│ └─fonts
│ └─images
│ └─js
│ theme.xml
│ registration.php
minha compania :-
O nome do pacote de temas
básico: -
O nome do tema. Podemos ter vários temas nomeados dentro da pasta mycompany.
etc / view.xml: -
Este arquivo é usado para especificar dimensões da imagem do produto, miniaturas etc.
Magento_Theme: -
Este diretório é usado para substituir os arquivos de temas existentes do Magento.
Magento_Theme / layout / default.xml: -
Por padrão, o Magento2 assume que o arquivo de logotipo do seu tema deve ser: /web/media/logo.svg
Se você deseja outro arquivo para o logotipo, deve declará-lo no default.xml
arquivo.
Este arquivo também é usado para substituir as configurações do tema padrão.
media / preview.png: -
A visualização do tema atual.
web: -
Este diretório contém todos os dados estáticos do tema, como imagens, estilos, javascript, fontes etc.
registration.php: -
Este arquivo é necessário para registrar nosso tema no sistema Magento2.
theme.xml: -
Este é um arquivo obrigatório que define o nome do tema, seu pai e, opcionalmente, a imagem de visualização do tema.
Criando arquivos de tema
Vamos agora criar nossos arquivos um por um.
theme.xml (app / design / frontend / minhaempresa / basic / theme.xml)
<theme xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:Config/etc/theme.xsd">
<title>Basic</title> <!-- your theme's name -->
<parent>Magento/blank</parent> <!-- the parent theme -->
<media>
<preview_image>media/preview.jpg</preview_image> <!-- theme's preview image -->
</media>
</theme>
registration.php (app / design / frontend / minhaempresa / basic / registration.php)
<?php
\Magento\Framework\Component\ComponentRegistrar::register(
\Magento\Framework\Component\ComponentRegistrar::THEME,
'frontend/mycompany/basic',
__DIR__
);
default.xml (app / design / frontend / minhaempresa / básico / Magento_Theme / layout / default.xml)
<page xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:View/Layout/etc/page_configuration.xsd">
<body>
<referenceBlock name="logo">
<arguments>
<argument name="logo_file" xsi:type="string">images/my_logo.png</argument>
<argument name="logo_img_width" xsi:type="number">200</argument>
<argument name="logo_img_height" xsi:type="number">200</argument>
</arguments>
</referenceBlock>
</body>
</page>
Neste ponto, nosso tema está pronto. Limpe seu cache e agora vamos selecionar nosso novo tema de admin.
Agora, faça login no admin e vá para o seguinte caminho:
Content -> Design -> Themes
Você deve ver o seu tema listado.
Agora vá para:
Stores -> Configuration -> Design
Escolha Site principal na frente da Visualização da loja, no canto superior esquerdo. Agora clique
Desgin -> Design Theme
Desmarque a caixa de seleção Usar padrão e escolha seu tema. Clique em Salvar configuração, limpe seu cache e seu novo tema está pronto. Verifique sua página inicial.
Para mais detalhes veja aqui.