Fórum OpenCart Brasil

Por um e-commerce livre, confiável e profissional

Suporte geral sobre problemas técnicos para OpenCart v2.x.
#86339
Olá turma.
Venho mais uma vez pedir ajuda para vocês com mais esse abacaxi.
Gostaria de exibir no próprio produto a quantidade inserida no carrinho.
Exemplo:
Produto X foi inserido 10 qtde. no Carrinho, essa quantidade gostaria que fosse exibida no produto,seja na página do catálogo, pois caso o navegador seja fechado, ou tenha uma queda de energia, ou até mesmo o cliente não venha finalizar a compra no mesmo dia, gostaria que a quantidade ainda permanecesse e mostrasse no produto evitando assim que o cliente insira tudo de novo as quantidades, sem ter que acessar o histórico de compras.

Se alguém puder dar uma luz, agradeço. Muito obrigado!
#86346
Olá; Não sei se é o que deseja mais se for exibir a quantidade na mensagem que é exibida ao adicionar o item ao carrinho deve alterar o arquivo catalog/controller/checkout/cart.php; Após a modificação deve acessar o menu extensões > modificações a clicar no botão atualizar;

Localize:
Código: Selecionar todos
$json['success'] = sprintf($this->language->get('text_success'), $this->url->link('product/product', 'language=' . $this->config->get('config_language') . '&product_id=' . $this->request->post['product_id']), $product_info['name'], $this->url->link('checkout/cart', 'language=' . $this->config->get('config_language')));
Substituir por
Código: Selecionar todos
$json['success'] = sprintf($this->language->get('text_success'), $this->url->link('product/product', 'language=' . $this->config->get('config_language') . '&product_id=' . $this->request->post['product_id']), $quantity.' UND - '.$product_info['name'], $this->url->link('checkout/cart', 'language=' . $this->config->get('config_language')));
#86348
Olá.
Primeiramente muito obrigado pela vossa atenção.
Mas não seria bem isso que estou a resolver.
Meu problema se faz da seguinte forma:
O cliente faz seu login normalmente - Vai até o Catálogo do Produto que está querendo - Clica em Comprar - A compra vai para o carrinho (até aqui processo normal).
Agora que vem o abacaxi:
Após ele ter iniciado a compra gostaria que essa quantidade que ele comprou daquele produto (suponhamos que ele comprou 10 item do mesmo produto) fique aparecendo, por exemplo abaixo do preço desse produto - Exemplo: 10 itens inseridos.
Com se por um acaso o cliente fechar o Navegador, ou acabar a energia da casa dele.....quando ele voltar a se logar no site os mesmos 10 itens comprados estariam marcados no produto. Sem ele precisar ficar indo no Histórico e ver tudo que ele comprou e fazer tudo de novo.
Não sei se ficou claro minha explicação....mas é isso que estou quebrando a cabeça.
Mas mesmo assim agradeço novamente pela força.
Muito obrigado.
#86352
Eu entendi sua necessidade, no nesse caso é algo mais complexo e necessita desenvolvimento, os passo que informei posteriormente utilizei funções nativas, solicito que contrate alguém para fazer o desejado;
#86358
Obrigado. Realmente eu já estava pensando nisso.
Mas uma coisa, tem buscar o conteúdo do carrinho e exibi-lo em uma página? Por exemplo na página Catálogo dos produtos.
Anexei esse código "$this->session->data['cart']" em catalog\controller\product\category.php
Mas deu erro, então mudei para isso:
"$data['cart'] = $this->session->data['cart'];"
E agora está dando esse erro: Notice: Undefined index: cart
Ou posso usar esse código:
"$this->cart->getProducts();"
Mas não sei como processar em seguida em uma Array. :roll:
#86361
Para resgatar os itens dentro do carrinho utilize o método $this->cart->getProducts();, caso desejar enviar a data do carrinho para o arquivo tpl faça dessa forma $data['cart'] = $this->cart->getProducts();; Como o controller "category.php" já faz um loop foreach nos produtos a serem listados na página o ideal é você comprar o product_id loop com o product_id dos produtos do carrinho, caso coincidir enviar o valor "quantidade_carrinho" no array "$data['products'][]" , assim pode resgatar o valor no tpl através de $product['quantidade_carrinho']
Nil Yoshiro gostou disso
#86362
Muito obrigado pelo retorno. Iluminou bem meu caminho, pois muitas dúvidas que eu tinha já foram resolvidas.
Porém como meu nível de conhecimento em PHP é baixo se não dizer MUITO BAIXO.....
O que está acontecendo....na hora que envio para "category.tpl" ele retorna a quantidade do produto e não a quantidade inserida no carrinho, ou por outra dá erro de Notice: Undefined variable - category.php e no category.tpl tbém.
Onde estou errando?
#86363
Realmente sem conhecimento básico em PHP e opencart não irá progredir; Como é algo simples irei te passar passo a passo de como deve fazer para chegar ao resultado desejado;

O firewall WAF bloqueio eu postar o código aqui, então compactei o mesmo, baixe faça os passos informados;
Você não está autorizado a ver ou baixar esse anexo.
#86367
A dica que te passei irá imprimir na tela caso o item estiver no carrinho, após adicionar ao carrinho não irá imprimir nada, para isso você você deve criar uma simples função jquery; Caso adicionar o item ao carrinho e da um f5 para atualizar a tela vai notar que imprime sim acima do valor que tanta quantidade esta adicionada ao carrinho; Se não aparecer no seu projeto é porque fez alguma coisa errada ou esqueceu de atualizar o ocmod no menu modificação;

Em todo caso o que te passei no zip esta funcionando perfeitamente, faça testes e faça melhorias para se adequar ao seu projeto; Boa sorte;

Gente preciso de ajuda urgente. Na migraç&a[…]

Caro @reds , muito obrigado pela resposta.

PHP 8+ incompatibilidade

Toda tradução para a versão 3[…]

Ola @alex3257 Se você precisa apenas ver […]