Página 1 de 2

Evitar colocar produtos esgotados no carrinho

Enviado: 16 Mai 2016, 18:09
por Smagicas
Olá Pessoal,
Pesquisei bastante por aqui e não encontrei nada a respeito. Eu uso a versão 2.0.3.1 do OpenCart e notei um problema em que é permitido colocar produtos no carrinho de compras mesmo o produto estando esgotado, um pequeno aviso após isso é mostrado ao cliente mas nada prático. Além do mais dependendo da configuração na loja permite inclusive finalizar o pedido sem que o produto tenha em estoque, o que é terrível. Mesmo configurando a loja para não avisar sobre o estoque e assim não permite finalizar o pedido mas fica desagradável ao cliente em ter que ficar voltando e excluindo do carrinho.
Para contornar isso eu encontrei essa extensão que se propõe a resolver isso: http://themextension.com/Out-of-Stock-Button
Mas não consegui finalizar a compra desta extensão porque eu havia cancelado meu cartão internacional e acabei descobrindo que o meu atual é apenas nacional, já fui até minha agência e o gerente solicitou outro internacional para mim, mas demora um tempo até que chegue pelo correio.
A minha pergunta é, alguém conhece alguma extensão ou forma de sanar esse problema por aqui no Brasil? Eu até localizei uma extensão a venda em um local aqui mas entrei em contato e esta só resolve o botão da página informação dos produtos, mas os demais botões continuam "COMPRAR", o desenvolvedor disse que o cliente não clica em comprar antes de ir para a página dos produtos mas não é funcional, pois alguém pode clicar de má fé e comprar um produto esgotado e assim a loja tem que se virar. Essa extensão citada acima parece ser a mais funcional pois se propõe a trocar todos os botões de comprar da loja por Fora de Estoque, além de desativar estes para o carrinho.

Oscar Rocha

Re: Evitar colocar produtos esgotados no carrinho

Enviado: 17 Mai 2016, 05:34
por valdeir2000
Você pode tentar utilizando o código abaixo
Código: Selecionar todos
//catalog/controller/product/product.php
//Linha 160

if ($product_info['quantity'] <= 0) {
	$data['stock_qnt'] = false;
} else {
	$data['stock_qnt'] = true;
}
catalog/view/theme/*/template/product/product.tpl (Isso varia de tema para tema)
Substitua
Código: Selecionar todos
<button type="button" onclick="cart.add('<?php echo $product['product_id']; ?>', '<?php echo $product['minimum']; ?>');"><span class="hidden-xs hidden-sm hidden-md"><?php echo $button_cart; ?></span> <i class="fa fa-shopping-cart"></i></button>
por
Código: Selecionar todos
<?php if ($stock_qnt) : ?>
  <button type="button" onclick="cart.add('<?php echo $product['product_id']; ?>', '<?php echo $product['minimum']; ?>');"><span class="hidden-xs hidden-sm hidden-md"><?php echo $button_cart; ?></span> <i class="fa fa-shopping-cart"></i></button>
<?php else: ?>
  <button type="button" ><span class="hidden-xs hidden-sm hidden-md">Esgotado</span> <i class="fa fa-shopping-cart"></i></button>
<?php endif ?>
Caso não consiga pode adquirir esse módulo http://www.valdeirsantana.com.br/avise- ... nivel.html ou criar um cartão pré-pago http://www.contasuper.com.br/ para fazer a compra do módulo citado no post acima.

Re: Evitar colocar produtos esgotados no carrinho

Enviado: 17 Mai 2016, 12:50
por Smagicas
Olá Valdeir2000,
Fiz a tentativa descrita acima mas nada mudou, nem os botões comprar e nem o checkout no carrinho.
Quanto a extensão citada acima para informação de Avise-me não é o que eu preciso. E quanto a criar o cartão pré-pago eu já havía tentado mas a Pay-Pal tem um valor mínimo de $15 para isso e a extensão custa apenas $8, portanto eu perderia $7, prefiro aguardar chegar meu cartão internacional e então comprarei a extensão correta.

Obrigado pela resposta.

Oscar Rocha

Re: Evitar colocar produtos esgotados no carrinho

Enviado: 21 Mai 2016, 13:26
por Jasar Orion
he muito simples
la na adm em vez de selecionar que vc nao quer q compre produtos sem estoque
vc por que quer e salva
por algum motivo ta invertido sim com não

Re: Evitar colocar produtos esgotados no carrinho

Enviado: 22 Mai 2016, 12:13
por reds
Eu criei esta modificação, veja se ajuda.

Hide of stock

Comente e/ou deixe suas sugestões de melhorias, e um like na modificação é bem vindo!
:ugeek:

Re: Evitar colocar produtos esgotados no carrinho

Enviado: 22 Mai 2016, 16:28
por Smagicas
Jasar Orion, obrigado pela resposta.
Eu já havia percebido esta troca inexplicável dos botões, mas isso ajuda apenas para evitar o fechamento do pedido mas é irritante porque o cliente perde todo o trabalho de selecionar os produtos e só descobre no final que está sem estoque, e o pior é que geralmente ele não entende porque a página não avança e fica entrando em contato pensando ser um problema no módulo.

reds, obrigado pela resposta e pela informação da extensão, mas infelizmente não é exatamente o que eu preciso, muito semelhante a essa tem duas na OpenCart também de licença FREE e eu testei as duas, uma muda os botões COMPRAR dos produtos sem estoque para contact-me, a outra esconde os preços destes produtos e coloca no lugar um texto em vermelho de ESGOTADO, mas nenhuma das duas foi pleno para o que eu preciso, mesmo porque eu uso como texto nos produtos esgotados "Produto temporariamente indisponível". Mesmo assim tentei testar a sua mas não funcionou para mim talvez pela versão da loja e não alterei os scripts para testar porque como já existe uma extensão exata para essa finalidade prefiro aguardar, pelo menos se propõe a fazer o que preciso em todos os módulos da loja.

Aproveitando a oportunidade, eu já procurei e não achei onde mudo isso. Eu consegui editar o texto que aparece quando coloca um produto esgotado no carrinho, esse "Produtos marcados com ESGOTADO não estão disponíveis..." mas não consigo achar onde edito aqueles três asteriscos que ficam nos produtos esgotados no carrinho, fica assim (Produto Bla bla bla - ***) e eu gostaria de colocar assim (Produto Bla bla bla - PRODUTO ESGOTADO)

Novamente obrigado e abraços!

Oscar Rocha

Re: Evitar colocar produtos esgotados no carrinho

Enviado: 10 Mar 2017, 16:31
por inrev
Esta opção já tenho no sistema, mas você tem como criar algo que se o produto tem 5 no estoque e o cliente digitar 10 itens na quantidade ele não permite adicionar no carrinho?

Re: Evitar colocar produtos esgotados no carrinho

Enviado: 13 Mar 2017, 15:41
por reds
Ola @inrev

Na loja do Opencart temos a solução perfeita ao seu pedido, veja abaixo se alguma destas soluciona o seu pedido:
https://www.opencart.com/index.php?rout ... n_id=26283
---
https://www.opencart.com/index.php?rout ... n_id=26788

:ugeek:

Re: Evitar colocar produtos esgotados no carrinho

Enviado: 14 Mar 2017, 10:30
por phdorocha
reds escreveu:Eu criei esta modificação, veja se ajuda.

Hide of stock

Comente e/ou deixe suas sugestões de melhorias, e um like na modificação é bem vindo!
:ugeek:
Não funcionou na versão 2.3.0.2

Re: Evitar colocar produtos esgotados no carrinho

Enviado: 31 Mar 2018, 16:46
por 2100928
Boa tarde,

Não sei se já alguem teve este problema, não consigo realizar compra nos meus produtos sem stock... Uso a versão 2.0.3.1.

Possiveis soluções que não resolveram:
- Nas configurações colocar para não mostrar a mensagem (já coloquei o sim e o não, não faz diferença nenhuma.)
- Nas opções do produto o stock é 0 e o estado é "Disponivel por Encomenda" e a quantidade minima é 0 assim como tenho na opção Subtrair à existencia? "Não".

Jágooglei bastante mas não encontro ninguem com este problema. Alguem pode ajudar? Obrigado