vazy Posted November 3, 2018 Share Posted November 3, 2018 Bonjour, Sur mon site (en version 1.7.4.2) qui fonctionne avec le thème par défaut "classic", j'utilise les règles de prix pour afficher un prix barré sur un produit. J'ai donc le prix d'origine barré, le nouveau prix, ainsi qu'une étiquette avec le pourcentage de remise. Cependant, ce pourcentage de remise s'affiche avec les décimales, par exemple : -24,56%. Comment puis-je faire pour que ces étiquettes affichent un pourcentage de remise arrondi (vers le haut ou vers le bas, suivant la règle normale d'arrondi) sans que cela n'impact pas les calculs ? Ces étiquettes sont présentes sur la page de catégorie avec tous les produits, ainsi que sur la page d'un produit en lui-même (cf. screenshot). Merci beaucoup pour votre aide ! Link to comment Share on other sites More sharing options...
vazy Posted November 4, 2018 Author Share Posted November 4, 2018 Personne ne connait la réponse à cette question ? Une petite aide serait vraiment la bienvenue Link to comment Share on other sites More sharing options...
vazy Posted November 9, 2018 Author Share Posted November 9, 2018 Je ne serais vraiment pas contre un peu d'aide sur ce sujet :-/ Link to comment Share on other sites More sharing options...
Mag-WebDesign Posted July 10, 2019 Share Posted July 10, 2019 Bonjour, je ne sais pas si votre topic est toujours d'actualité, mais voici peut-être un fix pour vous aider. Je n'avais pas tout à fait la même problématique, c-a-d que j'avais juste besoin d'afficher les pourcentages de réduction (donc arrondis sans décimales) en plus du prix ancien et prix remisé sur une version Prestashop 1.7.4.0. Voici le bout de code que j'ai rajouter dans : themes/montheme/templates/catalog/_partials/product-cover-thumbnails.tpl themes/montheme/templates/catalog/_partials/miniatures/product.tpl Code : <!-- Si le produit est remisé : on affiche le pourcentage de réduction --> {if $product.has_discount} {if $product.discount_type === 'percentage'} <span class="discount-percentage discount-product">{$product.discount_percentage}</span> {elseif $product.discount_type === 'amount'} <span class="discount-amount discount-product">{$product.discount_amount_to_display}</span> {/if} {/if} Cela affiche sur la liste produit + fiche produit + quickview le label avec la remise en pourcentage arrondi. Bonne journée, Mag Link to comment Share on other sites More sharing options...
Guibgt Posted December 30, 2021 Share Posted December 30, 2021 Hello ! J'arrive un peu tard car je viens d'avoir la même problématique, et j'ai fini par trouver un moyen de le résoudre. Tout ça se passe en php dans le fichier ProductLazyArray.php (src/Adapter/Presenter/Product/ProductLazyArray) aux lignes suivantes : if ($show_price && $this->product['reduction']) { if ($this->product['discount_type'] === 'percentage') { $flags['discount'] = [ 'type' => 'discount', 'label' => $this->product['discount_percentage'], ]; Il suffit de créer une variable (que j'ai nommée $round_discount_percentage, et de lui attribuer la valeur du 'label' arrondie, puis d'appeler cette même fonction dans 'label'. Ce qui donne : if ($show_price && $this->product['reduction']) { if ($this->product['discount_type'] === 'percentage') { $round_discount_percentage = round($this->product['discount_percentage'],0); $flags['discount'] = [ 'type' => 'discount', 'label' => $round_discount_percentage.' %', ]; Je suppose que ça ne vous aidera plus, mais si quelqu'un d'autre rencontre ce problème, voici un morceau de solution (Pensez à mettre votre code source en commentaire pour pouvoir revenir en arrière) Bonne journée ! Guillaume Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now