Magento

Como redirecionar o botão de comprar para o Checkout

Como redirecionar o cliente para o Checkout quando ele adicionar 1 item no carrinho, pulando a página do Carrinho.

Para este tutorial você já deverá ter a estrutura de um módulo Magento pronta.

Função no Observer

public function addToCartComplete(Varien_Event_Observer $observer) {

    // Send the user to the Item added page
    $response = $observer->getResponse();
    $request = $observer->getRequest();
    $response->setRedirect(Mage::getUrl('checkout/onepage'));
    Mage::getSingleton('checkout/session')->setNoCartRedirect(true);

}

Observando o Evento

No arquivo config.xml do seu módulo adicione na seção dos eventos:

<events>       
    <checkout_cart_add_product_complete>
        <observers>
            <zz_zzcore_addtocartcomplete>
                <class>Zz_Zzcore_Model_Observer</class>
                <method>addToCartComplete</method>
            </zz_zzcore_addtocartcomplete>
        </observers>
    </checkout_cart_add_product_complete>
</events>

Faça as devidas alterações nas linhas:

<zz_zzcore_addtocartcomplete>

Altere também o nome classe com o caminho correto do Model dentro do seu módulo.

Zz_Zzcore_Model_Observer

Após qualquer alteração no Módulo não se esqueça de esvaziar o Cache do Magento antes de testar.

Post Recentes

Bloquear .env e .git no nginx: as regras que ainda deixam o arquivo vazar

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…

12 horas atrás

Canonical errado no Yoast: corrigindo pelo filtro wpseo_canonical

O Search Console marca suas páginas 2, 3 e 4 como alternativas da página 1? Ajuste a tag canônica do…

16 horas atrás

Layout XML do Magento 2: remover bloco de módulo de terceiro

Um módulo de terceiro plantou um banner no topo da loja e você não quer desinstalar nada: tire o bloco…

1 dia atrás

Restaurar dump do Magento 2 em outro servidor: trocar a base_url no SQL

Importou o banco de produção e o site pula para o domínio antigo? Rode o UPDATE em core_config_data, limpe o…

2 dias atrás

Criar exceção customizada em PHP: quando estender Exception compensa

Seu catch trata pedido inexistente e banco fora do ar do mesmo jeito. Veja como criar exceção customizada em PHP…

3 dias atrás

DataProvider Magento 2: form do admin abre com campos vazios ao editar

O form do admin salva mas abre em branco na edição: veja o getData() indexado pelo id da entidade e…

4 dias atrás