
Como adicionar um link no menu minha conta, que está presente na página para aonde o cliente é redirecionando quando se autentica no Magento 2.
Em seu módulo, crie o arquivo customer_account.xml na seguinte localização Namespace/ModuleName/view/frontend/layout
O conteúdo do arquivo customer_account.xml está no final do post, na sequência temos todo o código necessário para criar o módulo.
Substitua o [Vendor] e [ModuleName]…
app/code/[Vendor]/[ModuleName]/etc/module.xml
<?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]_[ModuleName]" setup_version="0.0.1" active="true"/>
</config> app/code/[Vendor]/[ModuleName]/registration.php
<?php
\Magento\Framework\Component\ComponentRegistrar::register(
\Magento\Framework\Component\ComponentRegistrar::MODULE,
'[Vendor]_[ModuleName]',
__DIR__
); app/code/[Vendor]/[ModuleName]/etc/frontend/routes.xml
<?xml version="1.0" encoding="UTF-8"?>
<config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:App/etc/routes.xsd">
<router id="standard">
<route id="[modulename]" frontName="[modulename]">
<module name="[Vendor]_[ModuleName]"/>
</route>
</router>
</config> app/code/[Vendor]/[ModuleName]/Controller/Index/Index.php
<?php
namespace [Vendor]\[ModuleName]\Controller\Index;
use Magento\Framework\Controller\ResultFactory;
use Magento\Framework\App\Action\Context;
class Index extends \Magento\Framework\App\Action\Action
{
protected $_resultPageFactory;
public function __construct(Context $context, \Magento\Framework\View\Result\PageFactory $resultPageFactory)
{
$this->_resultPageFactory = $resultPageFactory;
parent::__construct($context);
}
public function execute()
{
$resultPage = $this->_resultPageFactory->create();
return $resultPage;
}
} app/code/[Vendor]/[ModuleName]/view/frontend/layout/[modulename]_index_index.xml
<?xml version="1.0"?>
<page xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../../../../../lib/internal/Magento/Framework/View/Layout/etc/page_configuration.xsd" layout="2columns-left">
<update handle="customer_account"/>
<referenceBlock name="page.main.title">
<action method="setPageTitle">
<argument translate="true" name="title" xsi:type="string">[My Title]</argument>
</action>
</referenceBlock>
<referenceContainer name="page.messages">
<block class="Magento\Framework\View\Element\Messages" name="messages" as="messages"/>
</referenceContainer>
<referenceContainer name="content">
<block class="[Vendor]\[ModuleName]\Block\MyBlock" name="[modulename]_[modulename]_index.view" template="[Vendor]_[ModuleName]::index.phtml"/>
</referenceContainer>
</page> app/code/[Vendor]/[ModuleName]/Block/MyBlock.php
<?php
namespace [Vendor]\[ModuleName]\Block;
class MyBlock extends \Magen
public $_storeManto\Framework\View\Element\Template
{ager;
/**
* Construct
*
* @param \Magento\Framework\View\Element\Template\Context $context
* @param array $data
*/ public function __construct(
\Magento\Backend\Block\Template\Context $context,
\Magento\Store\Model\StoreManagerInterface $storeManager
)
{
$this->_storeManager=$storeManager;
parent::__construct($context);
}
public function _prepareLayout()
{
$this->pageConfig->getTitle()->set(__('My Block'));
return parent::_prepareLayout();
}
} app/code/[Vendor]/[ModuleName]/view/frontend/layout/customer_account.xml
<?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>
<referenceBlock name="customer_account_navigation">
<block class="Magento\Framework\View\Element\Html\Link\Current" name="customer_account_my_link">
<arguments>
<argument name="path" xsi:type="string">[modulename]/index/index</argument>
<argument name="label" xsi:type="string">My Link</argument>
</arguments>
</block>
</referenceBlock>
</body>
</page> Remova o diretório var e limpe o Cache.
Módulo gratuito Roger_CnpjAlfanumerico que aplica máscara e validação do novo CNPJ alfanumérico no checkout e formulários do Magento 2 e…
A partir de 06/07/2026 a Receita passa a emitir CNPJ alfanumérico. Conheça o plugin grátis que aplica máscara e validação…
Para remover um módulo do Magento 2, siga os passos abaixo: 1. Desabilitar o módulo Primeiro, desabilite o módulo usando…
Para cancelar 100% do pedido e criar um crédito para todos os itens através da API REST do Magento 2,…
No Magento 2, a quantidade "reservada" na "Salable Quantity" é gerenciada principalmente pelos módulos MSI (Multi-Source Inventory). A "Salable Quantity"…
Como corrigir o erro ao acessar o Admin do Magento 2. Mesmo após fazer o login, permanece na tela de…