Magento – How to apply Fixed Special price intead of Percentage Special price in Bundle Product

bundled-productmagento-1.7magento-1.9

I am working on a website which uses bundle product. The main concept of the product is a below:

Website sells a device with four different colors. There are packages of colour like

  1. 2 Regular color + 1 Special colour = $45
  2. 1 Regular color + 2 Special colour = $50

There is no particular algorithm for defining price. I am using bundle product with Fixed Price for this.

Now, there is a special price for each product. But i see, you can only apply percentage discount in bundle price and can't set the fixed special price discount. I am not sure why is it so as we already have a fixed price and they aren't going to vary.

Also, on the frontend instead of stricking off the old price and showing special price, it directly shows the special price making it impossible for customer to identify whether he is getting a discount or not.

I found two questions related to it with no answers.Q1 Q2 . It would be of great help if someone can guide me on how to apply fixed price discount ie: fixed special price on the product in Bundle product.

Best Answer

It is not possible with default settings on Product page in the Admin.

But you can customize the bundle/catalog/product/price.phtml to show the original price strikes.

<p class="old-price">
                    <span class="price-label"><?php echo $this->__('Regular Price:') ?></span>
                    <span class="price" id="old-price-<?php echo $this->getIdSuffix() ?>">
                        <?php                           
                        /** Changes - To show the regular price for Bundled Product **/
                        $_storeId = $_product->getStoreId();
                        $_store = $_product->getStore();
                        $_id = $_product->getId();
                        $_simplePricesTax = ($_taxHelper->displayPriceIncludingTax() || $_taxHelper->displayBothPrices());

                        $_convertedPrice = $_store->roundPrice($_store->convertPrice($_product->getPrice())); 
                        $_price = $_taxHelper->getPrice($_product, $_convertedPrice); 
                        $_regularPrice = $_taxHelper->getPrice($_product, $_convertedPrice, $_simplePricesTax); 
                        $_specialPriceStoreLabel = $this->getProductAttribute('special_price')->getStoreLabel();
                        /** Ends - To show the regular price for Bundled Product **/
                        echo $regular_formatted_price =  $_coreHelper->formatPrice($_regularPrice, false) ;
                        ?>

                    </span>
                </p>
                <p class="special-price">
                    <span class="price-label"><?php echo $_specialPriceStoreLabel ?></span>
                    <span class="price" id="product-price-<?php echo $_id ?><?php echo $this->getIdSuffix() ?>">
                    <?php echo $_coreHelper->currency($_minimalPriceTax) ?>
                    </span>
                </p>

I have uploaded the price.phtml here, please have a look and modify it based on your tax settings: https://github.com/svlega/Bundled-Price

This works for tax settings to show price including tax (without FPT).