Como criar um bloco e adiciona-lo na página do Carrinho via modulo no Magento 2
Passo 1: Criar um Módulo
Primeiro, crie um módulo personalizado:
-
Crie a estrutura de diretórios do módulo em
app/code/Vendor/Module
. SubstituaVendor
pelo nome da sua empresa ou projeto, eModule
pelo nome do seu módulo. -
Crie
registration.php
emapp/code/Vendor/Module
:
<?php
\Magento\Framework\Component\ComponentRegistrar::register(
\Magento\Framework\Component\ComponentRegistrar::MODULE,
'Vendor_Module',
__DIR__
);
Crie etc/module.xml
em app/code/Vendor/Module
:
<?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="Vendor_Module" setup_version="1.0.0">
<sequence>
<module name="Magento_Checkout"/>
</sequence>
</module>
</config>
Passo 2: Criar um Bloco
Crie um bloco personalizado em app/code/Vendor/Module/Block
:
-
Crie o diretório
app/code/Vendor/Module/Block
se ele ainda não existir. -
Crie um arquivo PHP, por exemplo,
CustomCart.php
, com o seguinte conteúdo:
<?php
namespace Vendor\Module\Block;
use Magento\Framework\View\Element\Template;
class CustomCart extends Template
{
// Sua lógica personalizada vai aqui
}
Passo 3: Criar um arquivo PHTML
Crie o arquivo phtml em app/code/Vendor/Module/view/frontend/templates
:
-
Crie o diretório
app/code/Vendor/Module/view/frontend/templates
se ele ainda não existir. -
Crie um arquivo, por exemplo,
custom_cart.phtml
, com o seu código HTML e PHP:
Passo 4: Criar um arquivo XML de Layout
Crie um arquivo XML de layout para especificar onde o bloco deve ser renderizado:
-
Crie o diretório
app/code/Vendor/Module/view/frontend/layout
se ele ainda não existir. -
Crie um arquivo, por exemplo,
checkout_cart_index.xml
, com o seguinte conteúdo:
<?xml version="1.0"?>
<page xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:View/Layout/etc/page_configuration.xsd">
<body>
<referenceContainer name="content">
<block class="Vendor\Module\Block\CustomCart" name="custom.cart" template="Vendor_Module::custom_cart.phtml" />
</referenceContainer>
</body>
</page>
Passo 5: Limpar o Cache e Testar
Depois de completar esses passos, limpe o cache executando:
php bin/magento cache:clean
Agora, visite a página do carrinho na sua loja Magento 2, e você deverá ver o seu conteúdo personalizado sendo exibido.
Lembre-se de substituir Vendor_Module
pelo nome do módulo que você escolheu. Além disso, ajuste namespaces e nomes de arquivos conforme necessário com base nos requisitos específicos do seu projeto.