Lo sconto quantità prestashop si genera inserendo dal prodotto i prezzi specifici, come mostrato in questa tabella
.
Nel frontend verrà visualizzata una tabella con la quantità per avere lo sconto, il valore dello sconto e la colonna con il valore del risparmio.
Per quanto la tabella possa rendere chiaro all’utente quale sia il risparmio effettivo utilizzando lo sconto quantità prestashop, rimane sempre non chiaro quale sarà il prezzo finale unitario del prodotto.
Visualizzare una colonna con il prezzo scontato in Prestashop 1.7 senza ricorrere all’acquisto di ulteriori moduli è molto semplice se avete delle basi di programmazione, ecco i semplici passi da eseguire:
1) Come prima cosa bisogna modificare il file “…\classes\product\SpecificPriceFormatter.php” ed aggiungere la riga che valorizza il prezzo unitario scontato all’interno della funzione formatSpecificPrice:
dopo $this->specificPrice[‘unit_price’] = $priceFormatter->format($discountPrice);
aggiungere $this->specificPrice[‘unit_price’] = $priceFormatter->format($discountPrice);
Ecco la parte finale della funzione formatSpecificPrice in un file SpecificPriceFormatter.php di esempio con il risultato finale:
$this->specificPrice['discount'] = $this->specificPrice['real_value'] . '%';
}
}
}
$this->specificPrice['save'] = $priceFormatter->format((($initialPrice * $this->specificPrice['quantity']) - ($discountPrice * $this->specificPrice['quantity'])));
$this->specificPrice['unit_price'] = $priceFormatter->format($discountPrice);
return $this->specificPrice;
}
2) Fatto questo va modificato il file “…\themes\yourtheme\templates\catalog\_partials\product-discounts.tpl” aggiungendo il tag per la colonna:
prima di <td>{$quantity_discount.save}</td>
aggiungere <td>{$quantity_discount.unit_price}</td>
e inserendo il tag per il titolo della colonna:
prima di <th>{l s=’You Save’ d=’Shop.Theme.Catalog’}</th>
aggiungere <th>{l s=’Price’ d=’Shop.Theme.Catalog’}</th>
Ecco un file Product-discounts.tpl di esempio con il risultato finale:
<section class="product-discounts"> {if $product.quantity_discounts} <p class="h6 product-discounts-title">{l s='Volume discounts' d='Shop.Theme.Catalog'}</p> {block name='product_discount_table'} <table class="table-product-discounts"> <thead> <tr> <th>{l s='Quantity' d='Shop.Theme.Catalog'}</th> <th>{$configuration.quantity_discount.label}</th> <th>{l s='Price' d='Shop.Theme.Catalog'}</th> <th>{l s='You Save' d='Shop.Theme.Catalog'}</th> </tr> </thead> <tbody> {foreach from=$product.quantity_discounts item='quantity_discount' name='quantity_discounts'} <tr data-discount-type="{$quantity_discount.reduction_type}" data-discount="{$quantity_discount.real_value}" data-discount-quantity="{$quantity_discount.quantity}"> <td>{$quantity_discount.quantity}</td> <td>{$quantity_discount.discount}</td> <td>{$quantity_discount.unit_price}</td> <td>{$quantity_discount.save}</td> </tr> {/foreach} </tbody> </table> {/block} {/if} </section>
3) Svuotare la cache di prestashop e del server.
Ecco il risultato finale:
Spero che questo articolo sullo sconto quantità prestashop possa essere utile a qualcuno, ovviamente basandovi su quello che vi ho appena mostrato potete agire sulle altre colonne, ad esempio eliminando qualche colonna che non vi serve oppure mettendo in grassetto una colonna che vi interessa, sono tante insomma le cose che potete adattare ai vostri gusti con questi semplici accorgimenti.
Come al solito, se questo articolo vi è stato utile continuare a seguirmi, se avete bisogno di altri consigli o volete chiedermi informazioni, non esitate a contattarmi.
Roberto Pasqualino
CEO of RPS Soluzioni Informatiche