Página 1 de 3
[TUTORIAL] Exibir preço do produto com desconto!
Enviado: 16 Fev 2014, 12:51
por leandrorppo
Olá!
Como vi alguns pedidos de como exibir o preço do
produto com
desconto, segue a solução (testado na versão 1.5.5.1):
Código: Selecionar todos <?php
//Leandro R.P.P.O
if (!$special) {
$preco_sw = str_replace(',','.',str_replace('.','', str_replace("R$","",$price)));
} else {
$preco_sw = str_replace(',','.',str_replace('.','', str_replace("R$","",$special)));
}
?>
<?php
$preço_sw;
$percentual = 5 / 100; // 5%
$valor_final = $preco_sw - ($percentual * $preco_sw);
$valor_sw = number_format($valor_final, 2, ',', '.');
?>
<font color="#F15A23" size="5"><strong>R$ <?php echo $valor_sw ; ?></strong></font>
No exemplo abaixo o código na página de produtos:
Lembrando que o preço com desconto não será inserido no carrinho de compras, é apenas a EXIBIÇÃO como solicitado em alguns tópicos:
https://forum.opencartbrasil.com.br/ ... =12&t=9697
https://forum.opencartbrasil.com.br/ ... %25#p48406
https://forum.opencartbrasil.com.br/ ... =21&t=9474
O módulo ideal para aplicar os descontos nos tipos de pagamentos:
https://forum.opencartbrasil.com.br/ ... +pagamento
Abraço a todos e boas vendas.
Re: [TUTORIAL]EXIBIR preço do produto com desconto!
Enviado: 17 Fev 2014, 09:10
por daniloavenoso
Bom dia amigo!!
Primeiramente obrigado pela ajuda!
Porém não consegui fazer funcionar!
Coloco em meu templat product.tpl e não exibe nada. O que será?
Re: [TUTORIAL]EXIBIR preço do produto com desconto!
Enviado: 17 Fev 2014, 12:34
por leandrorppo
Olá, tudo bem?
Desculpe, tinha esquecido de inserir a última linha, já corrigi acima, tente agora que dará certo.
Re: [TUTORIAL]EXIBIR preço do produto com desconto!
Enviado: 17 Fev 2014, 15:05
por daniloavenoso
Perfeito...agora foi!!
Muito obrigado! Seria possível inserir esse desconto no preço dos produtos dos módulos?
Re: [TUTORIAL]EXIBIR preço do produto com desconto!
Enviado: 17 Fev 2014, 15:32
por daniloavenoso
Eu tentei inserir o mesmo código no template dos módulos, mas o preço com
desconto aparece R$ 0,00

Re: [TUTORIAL]EXIBIR preço do produto com desconto!
Enviado: 17 Fev 2014, 15:40
por leandrorppo
Na minha loja como utilizo o
parcelamento do
@denisgomes adaptei o mesmo para exibir o
desconto nos módulos:
Código: Selecionar todos<?php
/*
Configuracoes do sistema de parcelamento
----------------------------------------
$qtd_parcelas = Define a quantidade de parcelas a ser exibida para os produtos
$juros = Taxa de juros mensal (deixe em 0 para parcelamento sem juros)
$moeda_da_loja = Permite especificar a moeda utilizada na loja
$tipo_de_calculo = Permite escolher o tipo de calculo a ser utilizado
0 = Juros simples (Pagamento Digital)
1 = Tabela Price (PagSeguro e outros)
*/
$qtd_parcelas = 12;
$juros = 0.000000001;
$moeda_da_loja = 'R$ ';
$tipo_de_calculo = 0;
$parcela_minima = 5.00;
if (!$product['special']) {
$preco_numero = str_replace(',','.',str_replace('.','', str_replace($moeda_da_loja,"",strip_tags($product['price']))));
} else {
$preco_numero = str_replace(',','.',str_replace('.','', str_replace($moeda_da_loja,"",strip_tags($product['special']))));
}
// Calcula o valor da parcela de acordo com o tipo de calculo utilizado
if ($tipo_de_calculo == 0) {
$valor_total = ($preco_numero * pow(1+($juros/100), $qtd_parcelas));
$max_parcelas = intval($valor_total/$parcela_minima);
if ($max_parcelas < $qtd_parcelas) { $qtd_parcelas = $max_parcelas; }
$valor_parcela = $valor_total/$qtd_parcelas;
}
if ($tipo_de_calculo == 1) {
$valor_total = ($preco_numero * ($juros/100));
$max_parcelas = intval($valor_total/$parcela_minima);
if ($max_parcelas < $qtd_parcelas) { $qtd_parcelas = $max_parcelas; }
$valor_parcela = $valor_total/(1-(1/(pow(1+($juros/100), $qtd_parcelas))));
}
// Exibe as frases de parcelamento
echo '<span style="font-size:14px; color: #444444;">Em até </span><span style="font-size:14px; color: #F15A23;">' . $qtd_parcelas . 'x<span style="font-size:14px; color: #444444;"> de </span>' . $moeda_da_loja . number_format($valor_parcela, 2, ',', '.') . '</span><br/>';
if ($juros == 0) { echo '<br />sem juros'; } else { echo ''; }
//Linhas adicionadas para o desconto
$percentual = 5 / 100; // 5%
$valor_final = $preco_numero - ($percentual * $preco_numero);
$valor_sw = number_format($valor_final, 2, ',', '.');
?>
<font color="#999999" size="2">ou à vista</font> <font color="#F15A23" size="3"><strong>R$ <?php echo $valor_sw ; ?></strong></font>
Re: [TUTORIAL]EXIBIR preço do produto com desconto!
Enviado: 18 Fev 2014, 08:29
por daniloavenoso
Consegui fazer funcionar, inclusive adicionei parcelamento e desconto a vista no total do carrinho também.
Obrigado.
Re: [TUTORIAL]EXIBIR preço do produto com desconto!
Enviado: 18 Fev 2014, 08:53
por leandrorppo
Se puder por favor postar as modificações que fez para melhorar mais o código ficaria agradecido.
Re: [TUTORIAL]EXIBIR preço do produto com desconto!
Enviado: 18 Fev 2014, 15:00
por daniloavenoso
Para o
desconto no total do carrinho inseri no catalog/view/theme/SEU TEMA/template/module/cart.tpl e catalog/view/theme/SEU TEMA/template/checkout/cart.tpl o código abaixo (o local vai depender do template):
Código: Selecionar todos<?php
$preco_sw = str_replace(',','.',str_replace('.','', str_replace("R$","",$total['text'])));
$preço_sw;
$percentual = 5 / 100; // 5%
$valor_final = $preco_sw - ($percentual * $preco_sw);
$valor_sw = number_format($valor_final, 2, ',', '.');
?>
<div style="font-size: 14px; background-color:#85AA1F; color:#fff; padding: 3px; float:right; clear:right;">ou R$ <?php echo $valor_sw ; ?> no depósito bancário.</div>
Para
parcelamento, nos mesmo arquivos inseri o seguinte código (cabe a cada um aplicar a taxa de juros ideal):
Código: Selecionar todos<div style="float: right; clear:right;"><?php
/*
Configuracoes do sistema de parcelamento
----------------------------------------
$maximo_parcelas = Define a quantidade maxima de parcelas aceita pela loja
$parcela_minima = Valor minimo da parcela aceito pela loja
$parcelas_sem_juros = Define quantas parcelas nao terao juros
$juros = Taxa de juros mensal
$moeda_da_loja = Permite especificar a moeda utilizada na loja
$tipo_de_calculo = Permite escolher o tipo de calculo a ser utilizado
0 = Juros simples (Pagamento Digital)
1 = Tabela Price (PagSeguro e outros)
*/
$maximo_parcelas = 12;
$parcela_minima = 5;
$parcelas_sem_juros = 1;
$juros = 1.75;
$moeda_da_loja = 'R$ ';
$tipo_de_calculo = 0;
$preco_numero = str_replace(',','.',str_replace('.','', str_replace($moeda_da_loja,"",strip_tags($total['text']))));
if ($preco_numero >= $parcela_minima*2) {
// Titulo
echo '<table width="100%">';
// Inicia a primeira coluna
echo '<div style="float: left; font-family: tahoma; font-size: 12px;">';
// Exibicao das parcelas
for ($p = 1; $p <= $maximo_parcelas; $p++) {
// Se a parcela nao tiver juros
if ($p <= $parcelas_sem_juros) {
$valor_parcela = $preco_numero / $p;
}
// Se a parcela tiver juros
if ($p > $parcelas_sem_juros) {
if ($tipo_de_calculo == 0) {
$valor_parcela = ($preco_numero * pow(1+($juros/100), $p))/$p;
}
if ($tipo_de_calculo == 1) {
$valor_parcela = ($preco_numero * ($juros/100))/(1-(1/(pow(1+($juros/100), $p))));
}
}
// Escreve a parcela se ela for maior do que a parcela minima
if ($valor_parcela >= $parcela_minima) {
$valor_parcela = number_format($valor_parcela, 2, ',', '.');
if ($p <= $parcelas_sem_juros) {
echo '<span style="color: darkgreen;">' . $p . 'x de ' . $moeda_da_loja . $valor_parcela . ' </span><br />';
} else {
echo $p . 'x de ' . $moeda_da_loja . $valor_parcela . ' <br />';
}
}
// Fecha a primeira coluna e inicia a segunda
if ($p == intval($maximo_parcelas/2)+0) { echo '</div><div style="float: left; font-family: tahoma; font-size: 12px; margin-left: 29px;">'; }
}
// Fecha a segunda coluna e finaliza
echo '</div>';
echo '</table><br />';
}
?>
</div>
Re: [TUTORIAL]EXIBIR preço do produto com desconto!
Enviado: 18 Fev 2014, 15:01
por daniloavenoso
adicionem alguns itens no carrinho e vejam o resultado:
www.cromusmotoparts.com.br