Fórum OpenCart Brasil

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

Suporte geral sobre problemas técnicos para OpenCart v1.x.
Por andreiwd
#1910
Só vou fazer vendas acima de um valor mínimo X e pelo que vi, o open cart não tem uma configuração desse tipo, então fiz uma gambi que verifica se o valor é menor que X e alterei:

o header.tpl (retirando o finalizar)
o cart.tpl (modulo) - retirando o finalizar e deixando apenas VER O CARRINHO caso o valor seja superior ao mínimo;
o cart.tpl (checkout) - faz uma verificação e se for menor que o mínimo troca o botão finalizar por uma mensagem de "VALOR MÍNIMO NÃO ATINGIDO".

Sei que é coisa simples de se fazer, mas como estou começando, pra mim é uma grande coisa....

Se alguém precisar dos códigos, é só pedir q eu posto !

Abraço !

Andrei Amorim
http://www.generalhost.com.br/lojaagitaqua
Por andreiwd
#1928
O que alterei foi o seguinte:

Editar o arquivo header.tpl
Alterar a linha 69 onde faz referência ao link FINALIZAR (checkout) do menu do topo do site. No meu caso coloquei outro link no lugar...

Editar o arquivo information/sitemap.tpl
Localizar e EXCLUIR a linha 51:
Código: Selecionar todos
<li><a href="<?php echo str_replace('&', '&', $checkout); ?>"><?php echo $text_checkout; ?></a></li>
Explicação: se não fizer essas 2 alterações a qualquer momento a pessoa pode finalizar a compra mesmo que o valor não tenha atingido o mínimo.

Editar o arquivo modules/cart.tpl
Linha 26 - Localizar:
Código: Selecionar todos
<?php } ?>
substituir por
Código: Selecionar todos
      <?php 
	    $minimo = 50; // VALOR MÍNIMO QUE VAI UTILIZAR NA LOJA
	    $vertotal = str_replace("R$","","{$total['text']}");
		  } ?>
Localizar o código que escreve Finalizar no módulo carrinho
Código: Selecionar todos
<div style="padding-top:5px;text-align:center;clear:both;"><a href="<?php echo $view; ?>"><?php echo $text_view; ?></a> | <a href="<?php echo $checkout; ?>"><?php echo $text_checkout; ?></a></div>
Substituir por
Código: Selecionar todos
<div style="padding-top:5px;text-align:center;clear:both;"><?php if ($vertotal < $minimo) { echo "Valor M&iacute;nimo n&atilde;o atingido";} else {?><a href="<?php echo $view; ?>"><?php echo $text_view; }?></a></div>
Editar o arquivo checkout/cart.tpl
Na linha 127
Código: Selecionar todos
<?php } ?>
substituir por
Código: Selecionar todos
      <?php 
	    $minimo = 50; // VALOR MÍNIMO QUE VAI UTILIZAR NA LOJA
	    $vertotal = str_replace("R$","","{$total['text']}");
		  } ?>
Localizar o código que gera o botão Finalizar na visualização do carrinho
Código: Selecionar todos
<td align="right"><a onclick="location = '<?php echo str_replace('&', '&', $checkout); ?>'" class="button"><span><?php echo $button_checkout; ?></span></a></td>
e substituir por:
Código: Selecionar todos
<td align="right"><? if ($vertotal < $minimo) { echo "<font color='red'><b>M&iacute;nimo R$50,00 n&atilde;o Atingido";} else { ?><a onclick="location = '<?php echo str_replace('&', '&', $checkout);?>'" class="button"><span><?php echo $button_checkout; }?></span></a></td>

OBS: OS NÚMEROS DAS LINHAS PODEM VARIAR.... ESSES SÃO OS QUE APARECEM PRA MIM....
OBS 2: AINDA ASSIM DÁ PRA FINALIZAR A COMPRA ANTES DIGITANDO DIRETO, PARA PREVINIR ISSO, DEVE-SE ALTERAR OUTROS ARQUIVOS, PORÉM PARA USUÁRIOS COMUNS NÃO SE APLICA.

Sr. Moderador, se estiver confuso, favor alterar da melhor maneira....

É isso...

Abraço a todos !
Por serramoura
#2439
aqui está a correção do ultimo código:
Código: Selecionar todos
<td align="right"><?php if ($vertotal < $minimo) { echo "<font color='red'><b>M&iacute;nimo R$50,00 n&atilde;o Atingido";} else { ?><a onclick="location = '<?php echo str_replace('&', '&', $checkout);?>'" class="button"><span><?php echo $button_checkout; }?></span></a></td>
Por serramoura
#2454
tem um outro erro que eu nao conseguir indentificar esse codigo so funciona se a compra for abaixo de R$ 999,99 acima desse valor nao funciona
Por serramoura
#2462
O defeito estar aqui:
<?php
$minimo = 500; // VALOR MÍNIMO QUE VAI UTILIZAR NA LOJA
$vertotal = str_replace("R$","","{$total['text']}"); nessa linha aqui ("R$","","{ eu não consegui resolver vc tem a solução?}
?>
#2569
Galera, não se prendam a este código... Pedi pros mais experientes postarem modificações ai, apenas criei um hackzinho para inibir o botão... Dá pra melhorar bastante ainda, mas to muuuuitoooo sem tempo mesmo...
#2655
Por Andrei Teixeira - Porto Alegre/RS
AGORA RESOLVIDO MESMO!!! HEHEHE... MAS DÁ PRA MELHORAR AINDA MAIS.
Para que você possa finalizar a compra com o pedido mínimo, você deverá seguir os passos abaixo:

1) Abra o arquivo: catalog/controller/checkout/cart.php

a) Procura esta linha: (Mais ou menos na linha 199)
$this->data['totals'] = $total_data;

b) Adicione abaixo desta linha:
$this->data['vertotal'] = $total;
$this->data['minimo'] = 40 ; // No lugar do número 40, coloque o numero correspondente ao pedido mínimo.


2) Abra o arquivo: catalog/view/theme/default/template/checkout/cart.tpl

a) Procure esta linha (mais ou menos na linha 79) e apague:
<td align="right"><a onclick="location = '<?php echo str_replace('&', '&', $checkout); ?>'" class="button"><span><?php echo $button_checkout; ?></span></a></td>

b) No lugar dela, coloque o que está escrito abaixo:
<td align="right"><? if ($vertotal < $minimo) { echo "<font color='red'><b>M&iacute;nimo de R$ $minimo,00 n&atilde;o Atingido";} else { ?><a onclick="location = '<?php echo str_replace('&', '&', $checkout);?>'" class="button"><span><?php echo $button_checkout; }?></span></a></td>

3) Abra o arquivo: catalog/controller/module/cart.php

a) Procure esta linha, mais ou menos na linha 81:
$this->data['totals'] = $total_data;

b) Adiciona abaixo desta linha:
$this->data['vertotal'] = $total;
$this->data['minimo'] = 40 ; // No lugar do número 40, coloque o numero correspondente ao pedido mínimo.


c) Agora procure este trecho (somente este trecho... não é a linha inteira), mais ou menos na linha 186 e apague este trecho:
| <a href="' . $checkout . '">' . $this->language->get('text_checkout') . '</a>

Observação: Você está apagando este trecho para que não apareça novamente o link de “finalizar pedido” e o link “Ver carrinho”, quando você estiver na página dos detalhes do produto e clicar no botão “Adicionar ao carrinho”.

4) Abra o arquivo: catalog/view/theme/default/template/module/cart.tpl

a) Procure este trecho (apenas o trecho listado abaixo), mais ou menos na linha 29 e exclua:
<a href="<?php echo $view; ?>"><?php echo $text_view; ?></a> | <a href="<?php echo $checkout; ?>"><?php echo $text_checkout; ?></a>

b) No lugar dele, insira o trecho abaixo:
<? if ($vertotal < $minimo) { echo "<font color='red'><b>M&iacute;nimo de R$ $minimo,00 <br>n&atilde;o Atingido</b></font>";} else { ?> <a href="<?php echo $view; ?>"><?php echo $text_view; ?></a> | <a href="<?php echo $checkout; ?>"><?php echo $text_checkout; }?></a>

5) Abra o arquivo: catalog/view/theme/default/template/common/header.tpl

a) Mais ou menos na linha 71 procure e apague o trecho do código, ou coloque outro link no lugar:
<a href="<?php echo str_replace('&', '&', $checkout); ?>" id="tab_checkout"><?php echo $text_checkout; ?></a>

Pronto!!!

Para o futuro, uma ideia legal é fazer com que seja alterado o pedido mínimo pelo admin.
Um grande abraço a todos.
extensção -> Módulos

Voltou ao normal sozinho

Night games. One night, no worries Real Women P[…]

@Manoel Vidal Poderia me ajudar com 2 coisas n[…]

Looking for a partner for an unforgettable night? […]