Magento Forum

Como exibir tabela de parcelamento somente na página do produto
 
OGATORJ
Jr. Member
 
Total Posts:  8
Joined:  2013-07-26
 

Fala pessoal,

Consegui colocar uma tabela de parcelamento na página do produto exatamente onde queria, ficou perfeito, logo abaixo do preço especial. Adicionei o código da tabela modificando o arquivo: app -> design -> frontend -> default -> default -> template -> catalog -> product -> price.phtml

Acontece que está aparecendo a tabela em outros locais, especificamente na página inicial e na listagem dos produtos, etc… e desejo limitar o aparecimento da tabela somente a página do produto. Como posso fazer isso ? Dentro do próprio price.phtml ou seria em outro arquivo ?

Abs, Luciano.

 
Magento Community Magento Community
Magento Community
Magento Community
 
redlights
Jr. Member
 
Total Posts:  15
Joined:  2011-03-02
 

Olá, talvez este código possa lhe ajudar, consegui colocar pra funcionar ontem.

Peguei um código para parcelamento deste site (lá tem mais instruções de como colocar pra funcionar): http://www.weblibre....ado-no-magento/
e coloquei no arquivo parcela.phtml
Obs.: não usei o método do Mario Sam pois não sei se daria pra visualizar com juros e sem juros, não vi essa opção no código.

Alterei o código para funcionar exibindo até a 3a parcela sem juros e da 4a em diante com juros. Não sei dizer se é a forma mais correta de escrever o código mas funcionou: http://www.houserehab.com.br
Agora, o que preciso de ajuda seria pra fazer esse código funcionar no carrinho, pois facilita para o cliente ver o valor total de produtos em seu carrinho, bem como as opções de parcelamento do total de sua compra.

Código que está funcionando para o arquivo parcela.phtml e serve para exibir na página do produto:

<?php
    
function getNumParcelas($total$maxParcelas$valor_minimo)
    
{
        $nParcelas 
$maxParcelas;

  
//verifica o valor mínimo permitido para cada parcela
  
if (!empty($valor_minimo) && is_numeric($valor_minimo)) {
   $parcPossiveis 
floor($total $valor_minimo);

   if (
$parcPossiveis $nParcelas{
    $nParcelas 
$parcPossiveis;
   
}
  }

  
return $nParcelas;
    
}
function getValorParcela($total$parcela$taxa{
  
if(!is_numeric($total) || $total <= 0){
   
return(false);
  
}
  
if((int)$parcela != $parcela){
   
return(false);
  
}
  
if(!is_numeric($taxa) || $taxa 0){
   
return(false);
  
}
  $taxa 
$taxa 100;

  
$denominador 0;
  if(
$parcela 1){
   
for($i=1$i<=$parcela$i++){
    $denominador 
+= 1/pow(1+$taxa,$i);
   
}
  }else{
   $denominador 
1;
  
}
  
//return(round($total/$denominador));
  
return($total/$denominador);
 
}
?>

<div style="font-weight:bold; font-size:12px; width:280px;">PARCELAMENTO NO CARTÃO DE CRÉDITO:</div>
<
select>
<!-- 
sem juros: -->
<?php
      $_product 
$this->getProduct();
      
// máximo de parcelas
      
$maxParcelas 3;
      
// valor minimo de cada parcela
      
$valorMinimo 5;
      
$taxa 0;

      
$capital $_product->getFinalPrice();
      
$numParcelas getNumParcelas($capital$maxParcelas$valorMinimo);
      for(
$i=1$i $numParcelas$i++){
      $valorParcela 
getValorParcela($capital$i+1$taxa); ?>

<option value="<?php echo($i % 2 ? '<tr>' : ''); ?>"><br /><br />
     
  
<?php echo'<td><strong>'.($i+1).'</strong>x de <strong>R$ '.number_format($valorParcela,2,',','.'). ' sem juros</strong></td> --- Total: R$' .number_format($valorParcela*($i+1),2,',',' '?> </option>
  
<?php echo($i '' '</tr>'). "\n"
    
} ?>
  ?>
  
<!-- com juros: -->
  
<?php
      $_product 
$this->getProduct();
      
// máximo de parcelas
      
$maxParcelas 12;
      
// valor minimo de cada parcela
      
$valorMinimo 5;
      
$taxa 1.99;

      
$capital $_product->getFinalPrice();
      
$numParcelas getNumParcelas($capital$maxParcelas$valorMinimo);
      for(
$i=3$i $numParcelas$i++){
      $valorParcela 
getValorParcela($capital$i+1$taxa); ?>

<option value="<?php echo($i % 2 ? '<tr>' : ''); ?>">

<?php echo'<td><strong>'.($i+1).'</strong>x de <strong>R$ '.number_format($valorParcela,2,',','.'). '* com juros</strong></td> --- Total: R$' .number_format($valorParcela*($i+1),2,',',' ').'*' ?> </option>
<?php echo($i '' '</tr>'). "\n"
    
} ?>
  ?>
</select>
 <
div style="font-style:italic; font-size:11px;"> *Acima de 3 parcelas juros de 1,99ao mês </div>

Após funcionar na página do produto, quero fazer este código funcionar no carrinho, portanto coloquei este código no arquivo: /app/design/frontend/base/default/template/checkout/cart/totals.phtml
E claro, que não funcionou, pois no carrinho temos que usar getGrandTotal(); além de outras alterações no código.
Porém tentei de algumas formas fazer isso e não consegui, alguém pode me dar uma ajuda?

Obrigado!

 
Magento Community Magento Community
Magento Community
Magento Community
 
thebikevillage
Jr. Member
 
Total Posts:  1
Joined:  2013-11-28
 

Creo que me he equivaocado de post

componentes shimano,maxxis,cubiertas maxxis,shimano xt,shimano xtr,five ten, fiveten,shimano nexus,zapatillas ciclismo, sram, sram xx1, sram x01, frenos shimano, cubiertas mtb, neumaticos mtb, cascos bicicleta,repuestos bicicleta, componentes msc, msc bikes,intense, monty, bicicletas monty, luces bicicleta, lubricantes cadena,manillares bicicleta, pedales bicicleta, pedales automaticos, thebikevillage, tienda bicicletas, bicicletas, gafas 100%, cascos ixs, cascos descenso, ruedas ligeras, michelin,pedales plataforma

 
Magento Community Magento Community
Magento Community
Magento Community
Magento Community
Magento Community
Back to top