Executando verificação de segurança...
5

Como começar seu primeiro módulo - Magento 2


Onde escrever seu código?

É recomendado que os módulos sejam escritos na pasta app/code e temas na pasta app/design

Começando o seu módulo

  1. No Magento, temos o seguinte padrão: Primeiro criamos uma pasta com o nome da pessoa/empresa (no nosso caso, a pasta Magentando) responsável pelo desenvolvimento; E dentro desta pasta iremos criar as pastas dos módulos respectivamente.

  2. Na pasta app/code, crie uma pasta chamada Magentando;
    Na pasta app/code/Magentando, crie uma pasta chamada Popup;
    📂app
    ┣ 📂code
    ┃ ┣ 📂Magentando
    ┃ ┃ ┗ 📂Popup

  3. Dentro da pasta Popup, crie um arquivo chamado registration.php com o seguinte conteúdo:
    No código abaixo utilizamos da classe ComponentRegistrar para registrar estaticamente um componente, chamamos a função register que recebe 3 parêmetros, são eles:

    1. $type:
      Esse parâmetro por padrão pode receber 4 tipos de componentes module, library, theme, language e setup;
    2. $componentName:
      Esse parâmetro recebe o nome do vendor/distribuidor, seguido pelo nome do módulo. Ex: Magentando_Popup ;
    3. $path:
      Esse parâmetro recebe o diretório do módulo. Ex: __ DIR __ (que pega o diretório atual);
<?php
use Magento\Framework\Component\ComponentRegistrar;

ComponentRegistrar::register(ComponentRegistrar::MODULE, 'Magentando_Popup', __DIR__);
  1. Na pasta app/code/Magentando/Popup, crie uma pasta chamada etc;
    Nessa pasta vão as configurações do nosso módulo como banco de dados, injeções de dependência, api, etc. O único arquivo obrigatório nessa pasta é o module.xml;

  2. Na pasta etc crie um arquivo chamado module.xml:
    Seu maior uso é para versionar o módulo e definir uma sequência de load dos módulos dependentes, mas abordaremos isso nos próximos tutoriais.

<?xml version="1.0" ?>
<config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:Module/etc/module.xsd">
	<module name="Magentando_Popup"/>
</config>
  1. A estrutura do seu diretório deve ficar igual a essa:
    📂app
    ┣ 📂code
    ┃ ┣ 📂Magentando
    ┃ ┃ ┗ 📂Popup
    ┃ ┃ ┃ ┣ 📂etc
    ┃ ┃ ┃ ┃ ┗ module.xml
    ┃ ┃ ┃ ┗ registration.php

  2. Execute os comandos:

bin/magento setup:upgrade
bin/magento setup:di:compile
  1. Você pode conferir sua instalação, você pode executar o comando:
    Ele deve exibir a lista de módulos instalados, o seu deve estar constando:
    Magentando_Popup
bin/magento module:status

Pronto, seu primeiro módulo está feito e resgistrado.

Carregando publicação patrocinada...
1
2

Filipe, hoje provavelmente vou escrever mais uns 1 ou 2 posts e planejar uns videos, a meta é semana que vem ajustar meus horários para publicar uns 2 por semana pelo menos. Seu comentário voltou acender a vontade de criar conteúdo sobre Magento e PHP. Muito obrigado!!

1

Sensacional meu caro!!! E por enquanto a plataforma não tem muitas pessoas navegando (não foi nem lançada oficialmente ainda), mas seria muito legal ter uma figura importante em cada tecnologia, como por exemplo você com Magento 🤝

1
1

Fabiano, muito lega trazer conteúdos de PHP e Magento para o TabNews, pois é uma área extremamente fértil. Na época que trabalhava no Pagar.me eu lembro como que o Magento era uma solução extremamente forte na área 🤝