How to display product discount percent on product details page in Magento2?

by mageefy on Feb 9, 2023 Celebrities 359 Views

By default, Magento does not provide to show the discount percentage of the product. Discounts have been the most effective tool to beat the competition, attract potential customers, and generate sales. For Magento 2 store owners, it is going to be easy with the solution given below to display percentage discount on the product details page.

First we need to create "catalog_product_prices.xml" at below location using the given code.

app\code\Mageefy\Discountpercentage\view\base\layout\catalog_product_prices.xml

 

<?xml version="1.0" encoding="UTF-8"?>
<layout xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:View/Layout/etc/layout_generic.xsd">
    <referenceBlock name="render.product.prices">
        <arguments>
            <argument name="default" xsi:type="array">
                <item name="prices" xsi:type="array">
                <item name="final_price" xsi:type="array">
                    <item name="render_class" xsi:type="string">Magento\Catalog\Pricing\Render\FinalPriceBox</item>
                    <item name="render_template" xsi:type="string">Mageefy_Discountpercentage::product/price/final_price.phtml</item>
                </item>
                </item>
            </argument>
        </arguments>
    </referenceBlock>
</layout>

 

And after that create one more file to display the price and discount percentage on the product details page.

app\code\Mageefy\Discountpercentage\view\base\templates\product\price\final_price.phtml

 

<?php
$priceModel = $block->getPriceType('regular_price');
$finalPriceModel = $block->getPriceType('final_price');
$idSuffix = $block->getIdSuffix() ? $block->getIdSuffix() : '';
$schema = ($block->getZone() == 'item_view') ? true : false;
?>
<?php if ($block->hasSpecialPrice()): ?>
 <span class="special-price">
        <?php  echo $block->renderAmount($finalPriceModel->getAmount(), [
            'display_label' => __('Special Price'),
            'price_id'       => $block->getPriceId('product-price-' . $idSuffix),
         'price_type'     => 'finalPrice',
            'include_container' => true,
            'schema' => $schema
     ]); ?>
    </span>
 <span>
 <?php
 $item = $block->getSaleableItem();
    $_savePercent = 100 - round(((float)$item->getFinalPrice() / (float)$item->getPrice()) * 100);
 echo '<b style="color:#008000">'.$_savePercent . '% off </b>';
 ?>
    </span>
 <span class="old-price">
        <?php  echo $block->renderAmount($priceModel->getAmount(), [
         'display_label' => __('Regular Price'),
            'price_id'       => $block->getPriceId('old-price-' . $idSuffix),
            'price_type'     => 'oldPrice',
            'include_container' => true,
            'skip_adjustments'  => true
     ]); ?>
    </span>
<?php else: ?>
    <?php  echo $block->renderAmount($finalPriceModel->getAmount(), [
        'price_id'       => $block->getPriceId('product-price-' . $idSuffix),
        'price_type'     => 'finalPrice',
        'include_container' => true,
     'schema' => $schema
 ]); ?>
<?php endif; ?>
 
<?php if ($block->showMinimalPrice()): ?>
 <?php if ($block->getUseLinkForAsLowAs()):?>
     <a href="<?=  $block->getSaleableItem()->getProductUrl() ?>" class="minimal-price-link">
            <?= $block->renderAmountMinimal() ?>
        </a>
 <?php else:?>
     <span class="minimal-price-link">
            <?=  $block->renderAmountMinimal() ?>
        </span>
 <?php endif?>
<?php endif; ?>

That’s it.

Any doubts in the above solution? Please feel free to mention them in the Comments section below. I’d be glad to help you out.

visit- https://www.mageefy.com/blog/post/how-to-display-product-discount-percent-on-product-details-page-in-magento2

Article source: https://article-realm.com/article/Arts-Entertainment/Celebrities/36891-How-to-display-product-discount-percent-on-product-details-page-in-Magento2.html

Comments

No comments have been left here yet. Be the first who will do it.
Safety

captchaPlease input letters you see on the image.
Click on image to redraw.

Reviews

Guest

Overall Rating:

Most Viewed Articles

Statistics

Members
Members: 17226
Publishing
Articles: 79,838
Categories: 202
Online
Active Users: 450
Members: 1
Guests: 449
Bots: 5280
Visits last 24h (live): 5307
Visits last 24h (bots): 46388

Latest Comments

Watch Kissanime HD High Quality Animes With English Subbed And Dubbed Online.
It is somewhat fantastic, and yet check out the advice at this treat .Jpbosku  
Independent Escorts Delhi holds a rare balance. Soft manners one minute, full physical hunger the next. Smooth skin, strong legs, body that stays engaged till the end. Unhurried pace with...
This article really resonates with my own exploration of holistic wellness. I've found that mindful practices, much like what's described here, can profoundly shift perspective. If you're looking...
Royal Mint Login refers to the process of accessing your registered online account through The Royal Mint's official website. Depending on the services available to your account, you may be able...
Tether Gold is a gold-backed digital asset issued by TG Commodities Limited. Each XAU₮ token is designed to represent ownership of one fine troy ounce of physical gold held in a specified bullion...
Paxos is a financial technology company known for blockchain infrastructure and digital asset services. Depending on the product and your relationship with the company, account access may involve...
Goldmoney Login provides the entry point for eligible customers to access their accounts and review available precious-metal services. By using the official website, keeping login information...
OneGold is an online precious metals investment platform associated with APMEX and Sprott. It is designed to make buying and selling precious metals more accessible through a digital account,...
Thanks for this overview of Nordic online dating; the focus on a simple, user-friendly platform for finding love or just friendship is a clear selling point. I'm the author of iLoveAIImg, and...
on Oct 21, 2026 about Nordic Online Dating

Translate To: