Magento 2

Adicionar um item ao Carrinho com Preço Personalizado no Magento 2

Como adicionar um item ao Carrinho com Preço Personalizado no Magento 2

Exemplo a seguir utiliza do Object Manager, faça as adaptações necessárias para que seja compatível com seu Model, Controller, utilizando das boas praticas do Framework

 

$formKey = $this->_objectManager->create('\Magento\Framework\Data\Form\FormKey')->getFormKey();

$product = $this->_objectManager->create('Magento\Catalog\Model\Product');

$cart = $this->_objectManager->create('Magento\Checkout\Model\Cart');

$params = [];
$params['qty'] = 1;
$params['form_key'] = $formKey;           
$params['product'] = 2; /* ID do produto*/
$_product = $product->load(2);

$cart->addProduct($_product, $params);

$cart->save();

Após isso modifique o preço do item no Carrinho

$items = $cart->getQuote()->getAllItems();

foreach($items as $item) {

  /* criei uma condição para encontrar o item que deseja alterar o valor */  $item->setCustomPrice(999);
  $item->setOriginalCustomPrice(999]);
  $item->getProduct()->setIsSuperMode(true);
  $item->save();            
}

Post Recentes

YouTube sem cookie: adiar o embed do vídeo e do Maps até o aceite

Seu banner de consentimento está certo, mas o vídeo incorporado grava cookie de terceiro no primeiro carregamento. Troque o domínio…

8 horas atrás

Custom post type dando 404: flush_rewrite_rules na ativação do plugin

A listagem do custom post type abre e o single dá 404 no WordPress 6.9. Entenda o cache das rewrite…

2 dias atrás

systemd timer no lugar do cron: agendar script com log e sem execução dupla

Um par .service e .timer substitui a linha do crontab com log no journal, execução perdida recuperada no boot e…

2 dias atrás

Descrição em massa no WooCommerce: wp eval-file lendo a lista de SKUs

400 produtos importados do fornecedor com a aba Descrição vazia. Um wp eval-file percorre os SKUs sem texto, grava pelo…

2 dias atrás

Frete grátis no WooCommerce: esconder as outras opções de entrega

Some com PAC e SEDEX da lista quando o frete grátis está disponível, usando woocommerce_package_rates, e limpe o cache de…

3 dias atrás

Erro HTTP no WordPress ao enviar imagem para a biblioteca de mídia

A barra de upload chega no fim e o WordPress devolve só "Erro HTTP". Separe as três causas: Imagick barrado…

3 dias atrás