
Como criar um módulo para redirecionar o cliente para o Carrinho depois de realizar o Login no Magento 2
Primeiro passo você terá que criar a estrutura padrão de um módulo no Magento 2
Siga o tutorial deste Post: https://rogertakemiya.com.br/como-criar-um-modulo-no-magento-2/
Nome do arquivo: CustomerLogin
Localização: Vendor/Module/Observer
Conteúdo:
<?php
namespace Vendor\Module\Observer;
class CustomerLogin implements \Magento\Framework\Event\ObserverInterface
{
protected $_responseFactory;
protected $_url;
protected $_session;
public function __construct(
\Magento\Customer\Model\Session $session,
\Magento\Framework\App\ResponseFactory $responseFactory,
\Magento\Framework\UrlInterface $url
) {
$this->_session = $session;
$this->_responseFactory = $responseFactory;
$this->_url = $url;
}
public function execute(\Magento\Framework\Event\Observer $observer)
{
$isCustomerLoggedIn = $this->_session->isLoggedIn();
if ($isCustomerLoggedIn) {
$event = $observer->getEvent();
$CustomRedirectionUrl = $this->_url->getUrl('checkout/cart');
$this->_session->setBeforeAuthUrl($CustomRedirectionUrl);
return $this;
}
}
}
Obs: Altere Vendor/Module pela estrutura que você utilizou no seu módulo
Crie a seguinte pasta: Vendor/Module/etc/frontend
Crie o arquivo: Vendor/Module/etc/frontend/events.xml
Conteúdo:
<?xml version="1.0"?>
<config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:Event/etc/events.xsd">
<event name="customer_login">
<observer name="customer_login_observer" instance="Vendor\Module\Observer\CustomerLogin" />
</event>
</config> Obs: Altere Vendor/Module pela estrutura que você utilizou no seu módulo
Atualize o cache do tipo configuração, após isso você já poderá testar a customização.
Negar /.env no nginx parece resolvido até alguém pedir /wp-content/uploads/.env ou backup.sql. As regras que testei e os furos que…
O Search Console marca suas páginas 2, 3 e 4 como alternativas da página 1? Ajuste a tag canônica do…
Um módulo de terceiro plantou um banner no topo da loja e você não quer desinstalar nada: tire o bloco…
Importou o banco de produção e o site pula para o domínio antigo? Rode o UPDATE em core_config_data, limpe o…
Seu catch trata pedido inexistente e banco fora do ar do mesmo jeito. Veja como criar exceção customizada em PHP…
O form do admin salva mas abre em branco na edição: veja o getData() indexado pelo id da entidade e…