
magento 2
Como Limpar/Esvaziar o Carrinho no Magento 2 programaticamente
Bem, é possível limpar o carrinho usando três maneiras diferentes, mencionadas abaixo. Trabalhando com o Magento várias vezes você se deparou com essa situação por isso pensamos em criar um artigo no blog Magecomp.
namespace Vendor\Extension\Controller\Index;
use Magento\Checkout\Model\Cart;
use Magento\Checkout\Model\Session as CheckoutSession;
use Magento\Framework\App\Action\Action;
class Clearcart extends Action
{
protected $_modelCart;
protected $ checkoutSession;
public function __construct(CheckoutSession $checkoutSession,Cart $modelCart)
{
$this->checkoutSession = $checkoutSession;
$this->_modelCart = $modelCart;
}
public function execute()
{
$cart = $this->_modelCart;
$quoteItems = $this->checkoutSession->getQuote()->getItemsCollection();
foreach($quoteItems as $item)
{
$cart->removeItem($item->getId())->save();
}
}
} Nesse método, podemos obter o carrinho atual usando o objeto model cart e, em seguida, simplesmente truncá-lo.
namespace Vendor\Extension\Controller\Index;
class Clearcart extends Action
{
public function execute()
{
$objectManager = \Magento\Framework\App\ObjectManager::getInstance();
$cartObject = $objectManager->create('Magento\Checkout\Model\Cart')->truncate();
$cartObject->saveQuote();
}
} Neste último método, podemos excluir o item do carrinho Modal usando o código abaixo.
namespace Vendor\Extension\Controller\Index;
use Magento\Checkout\Model\Session as CheckoutSession;
use Magento\Quote\Model\Quote\Item
class Clearcart extends Action
{
protected $modelCartItem;
protected $checkoutSession;
public function __construct(CheckoutSession $checkoutSession,Item $modelCartItem)
{
$this->checkoutSession = $checkoutSession;
$this->_ modelCartItem = $modelCartItem;
}
public function execute()
{
$checkoutSession = $this->getCheckoutSession();
$allItems = $checkoutSession->getQuote()->getAllVisibleItems();
foreach ($allItems as $item)
{
$cartItemId = $item->getItemId();
$itemObj=$this->getItemModel()->load($cartItemId);
$itemObj->delete();
}
}
} Pedido que não fatura e e-mail que não sai porque todo job fica missed: como ler a cron_schedule, conferir o…
Uma função curta em PHP 8.3 que transforma Camiseta Preta Tamanho GG em camiseta-preta-tamanho-gg, sem depender do locale do servidor.
O banner registra o clique só no navegador e some. Veja a tabela MySQL e o endpoint que gravam a…
A classe do comando existe e o bin/magento list ignora ela. Falta o registro no di.xml: aqui vai a classe…
Como traduzir duas mil linhas do pt_BR.csv do Magento 2 lendo com fgetcsv e regravando com fputcsv, sem encostar na…
Produto variável respondendo "Desculpe, este produto não está disponível" mesmo com a variação ativa: limpe os transients do WooCommerce e…