-
-
Save hans2103/5635901 to your computer and use it in GitHub Desktop.
| <?php | |
| /** | |
| * Magento | |
| * | |
| * NOTICE OF LICENSE | |
| * | |
| * This source file is subject to the Academic Free License (AFL 3.0) | |
| * that is bundled with this package in the file LICENSE_AFL.txt. | |
| * It is also available through the world-wide-web at this URL: | |
| * http://opensource.org/licenses/afl-3.0.php | |
| * If you did not receive a copy of the license and are unable to | |
| * obtain it through the world-wide-web, please send an email | |
| * to [email protected] so we can send you a copy immediately. | |
| * | |
| * DISCLAIMER | |
| * | |
| * Do not edit or add to this file if you wish to upgrade Magento to newer | |
| * versions in the future. If you wish to customize Magento for your | |
| * needs please refer to http://www.magentocommerce.com for more information. | |
| * | |
| * @category design | |
| * @package base_default | |
| * @copyright Copyright (c) 2012 Magento Inc. (http://www.magentocommerce.com) | |
| * @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0) | |
| */ | |
| ?> | |
| <?php | |
| /** | |
| * Template for displaying product price in different places (products grid, product view page etc) | |
| * | |
| * @see Mage_Catalog_Block_Product_Abstract | |
| */ | |
| ?> | |
| <?php | |
| $_coreHelper = $this->helper('core'); | |
| $_weeeHelper = $this->helper('weee'); | |
| $_taxHelper = $this->helper('tax'); | |
| /* @var $_coreHelper Mage_Core_Helper_Data */ | |
| /* @var $_weeeHelper Mage_Weee_Helper_Data */ | |
| /* @var $_taxHelper Mage_Tax_Helper_Data */ | |
| $_product = $this->getProduct(); | |
| $_storeId = $_product->getStoreId(); | |
| $_id = $_product->getId(); | |
| $_weeeSeparator = ''; | |
| $_simplePricesTax = ($_taxHelper->displayPriceIncludingTax() || $_taxHelper->displayBothPrices()); | |
| $_minimalPriceValue = $_product->getMinimalPrice(); | |
| $_minimalPrice = $_taxHelper->getPrice($_product, $_minimalPriceValue, $_simplePricesTax); | |
| $idSuffix = $this->getIdSuffix(); | |
| $idSuffixArray = array( '-upsell', '-related', '_clone' ); | |
| ?> | |
| <?php if (!$_product->isGrouped()): ?> | |
| <?php $_weeeTaxAmount = $_weeeHelper->getAmountForDisplay($_product); ?> | |
| <?php if ($_weeeHelper->typeOfDisplay($_product, array(Mage_Weee_Model_Tax::DISPLAY_INCL_DESCR, Mage_Weee_Model_Tax::DISPLAY_EXCL_DESCR_INCL, 4))): ?> | |
| <?php $_weeeTaxAmount = $_weeeHelper->getAmount($_product); ?> | |
| <?php $_weeeTaxAttributes = $_weeeHelper->getProductWeeeAttributesForDisplay($_product); ?> | |
| <?php endif; ?> | |
| <?php $_weeeTaxAmountInclTaxes = $_weeeTaxAmount; ?> | |
| <?php if ($_weeeHelper->isTaxable() && !$_taxHelper->priceIncludesTax($_storeId)): ?> | |
| <?php $_attributes = $_weeeHelper->getProductWeeeAttributesForRenderer($_product, null, null, null, true); ?> | |
| <?php $_weeeTaxAmountInclTaxes = $_weeeHelper->getAmountInclTaxes($_attributes); ?> | |
| <?php endif; ?> | |
| <div class="price-box"> | |
| <?php $_price = $_taxHelper->getPrice($_product, $_product->getPrice()) ?> | |
| <?php $_regularPrice = $_taxHelper->getPrice($_product, $_product->getPrice(), $_simplePricesTax) ?> | |
| <?php $_finalPrice = $_taxHelper->getPrice($_product, $_product->getFinalPrice()) ?> | |
| <?php $_finalPriceInclTax = $_taxHelper->getPrice($_product, $_product->getFinalPrice(), true) ?> | |
| <?php $_weeeDisplayType = $_weeeHelper->getPriceDisplayType(); ?> | |
| <?php if ($_finalPrice >= $_price): ?> | |
| <?php if ($_taxHelper->displayBothPrices()): ?> | |
| <?php if ($_weeeTaxAmount && $_weeeHelper->typeOfDisplay($_product, 0)): // including ?> | |
| <span class="price-excluding-tax"> | |
| <span class="label"><?php echo $this->helper('tax')->__('Excl. Tax:') ?></span> | |
| <span class="price" <?php if(!in_array($idSuffix, $idSuffixArray)): ?> itemprop="price"<?php endif; ?> id="price-excluding-tax-<?php echo $_id ?><?php echo $this->getIdSuffix() ?>"> | |
| <?php echo $_coreHelper->currency($_price + $_weeeTaxAmount, true, false) ?> | |
| </span> | |
| </span> | |
| <span class="price-including-tax"> | |
| <span class="label"><?php echo $this->helper('tax')->__('Incl. Tax:') ?></span> | |
| <span class="price" id="price-including-tax-<?php echo $_id ?><?php echo $this->getIdSuffix() ?>"> | |
| <?php echo $_coreHelper->currency($_finalPriceInclTax + $_weeeTaxAmountInclTaxes, true, false) ?> | |
| </span> | |
| </span> | |
| <?php elseif ($_weeeTaxAmount && $_weeeHelper->typeOfDisplay($_product, 1)): // incl. + weee ?> | |
| <span class="price-excluding-tax"> | |
| <span class="label"><?php echo $this->helper('tax')->__('Excl. Tax:') ?></span> | |
| <span class="price" <?php if(!in_array($idSuffix, $idSuffixArray)): ?> itemprop="price"<?php endif; ?> id="price-excluding-tax-<?php echo $_id ?><?php echo $this->getIdSuffix() ?>"> | |
| <?php echo $_coreHelper->currency($_price + $_weeeTaxAmount, true, false) ?> | |
| </span> | |
| </span> | |
| <span class="price-including-tax"> | |
| <span class="label"><?php echo $this->helper('tax')->__('Incl. Tax:') ?></span> | |
| <span class="price" id="price-including-tax-<?php echo $_id ?><?php echo $this->getIdSuffix() ?>"> | |
| <?php echo $_coreHelper->currency($_finalPriceInclTax + $_weeeTaxAmountInclTaxes, true, false) ?> | |
| </span> | |
| <span class="weee">( | |
| <?php foreach ($_weeeTaxAttributes as $_weeeTaxAttribute): ?> | |
| <?php echo $_weeeSeparator; ?> | |
| <?php echo $_weeeTaxAttribute->getName(); ?>: <?php echo $_coreHelper->currency($_weeeTaxAttribute->getAmount(), true, true); ?> | |
| <?php $_weeeSeparator = ' + '; ?> | |
| <?php endforeach; ?> | |
| )</span> | |
| </span> | |
| <?php elseif ($_weeeTaxAmount && $_weeeHelper->typeOfDisplay($_product, 4)): // incl. + weee ?> | |
| <span class="price-excluding-tax"> | |
| <span class="label"><?php echo $this->helper('tax')->__('Excl. Tax:') ?></span> | |
| <span class="price" <?php if(!in_array($idSuffix, $idSuffixArray)): ?> itemprop="price"<?php endif; ?> id="price-excluding-tax-<?php echo $_id ?><?php echo $this->getIdSuffix() ?>"> | |
| <?php echo $_coreHelper->currency($_price + $_weeeTaxAmount, true, false) ?> | |
| </span> | |
| </span> | |
| <span class="price-including-tax"> | |
| <span class="label"><?php echo $this->helper('tax')->__('Incl. Tax:') ?></span> | |
| <span class="price" id="price-including-tax-<?php echo $_id ?><?php echo $this->getIdSuffix() ?>"> | |
| <?php echo $_coreHelper->currency($_finalPriceInclTax + $_weeeTaxAmountInclTaxes, true, false) ?> | |
| </span> | |
| <span class="weee">( | |
| <?php foreach ($_weeeTaxAttributes as $_weeeTaxAttribute): ?> | |
| <?php echo $_weeeSeparator; ?> | |
| <?php echo $_weeeTaxAttribute->getName(); ?>: <?php echo $_coreHelper->currency($_weeeTaxAttribute->getAmount() + $_weeeTaxAttribute->getTaxAmount(), true, true); ?> | |
| <?php $_weeeSeparator = ' + '; ?> | |
| <?php endforeach; ?> | |
| )</span> | |
| </span> | |
| <?php elseif ($_weeeTaxAmount && $_weeeHelper->typeOfDisplay($_product, 2)): // excl. + weee + final ?> | |
| <span class="price-excluding-tax"> | |
| <span class="label"><?php echo $this->helper('tax')->__('Excl. Tax:') ?></span> | |
| <span class="price" <?php if(!in_array($idSuffix, $idSuffixArray)): ?> itemprop="price"<?php endif; ?> id="price-excluding-tax-<?php echo $_id ?><?php echo $this->getIdSuffix() ?>"> | |
| <?php echo $_coreHelper->currency($_price, true, false) ?> | |
| </span> | |
| </span> | |
| <?php foreach ($_weeeTaxAttributes as $_weeeTaxAttribute): ?> | |
| <span class="weee"> | |
| <?php echo $_weeeTaxAttribute->getName(); ?>: <?php echo $_coreHelper->currency($_weeeTaxAttribute->getAmount(), true, true); ?> | |
| </span> | |
| <?php endforeach; ?> | |
| <span class="price-including-tax"> | |
| <span class="label"><?php echo $this->helper('tax')->__('Incl. Tax:') ?></span> | |
| <span class="price" id="price-including-tax-<?php echo $_id ?><?php echo $this->getIdSuffix() ?>"> | |
| <?php echo $_coreHelper->currency($_finalPriceInclTax + $_weeeTaxAmountInclTaxes, true, false) ?> | |
| </span> | |
| </span> | |
| <?php else: ?> | |
| <span class="price-excluding-tax"> | |
| <span class="label"><?php echo $this->helper('tax')->__('Excl. Tax:') ?></span> | |
| <span class="price" <?php if(!in_array($idSuffix, $idSuffixArray)): ?> itemprop="price"<?php endif; ?> id="price-excluding-tax-<?php echo $_id ?><?php echo $this->getIdSuffix() ?>"> | |
| <?php if ($_finalPrice == $_price): ?> | |
| <?php echo $_coreHelper->currency($_price, true, false) ?> | |
| <?php else: ?> | |
| <?php echo $_coreHelper->currency($_finalPrice, true, false) ?> | |
| <?php endif; ?> | |
| </span> | |
| </span> | |
| <span class="price-including-tax"> | |
| <span class="label"><?php echo $this->helper('tax')->__('Incl. Tax:') ?></span> | |
| <span class="price" id="price-including-tax-<?php echo $_id ?><?php echo $this->getIdSuffix() ?>"> | |
| <?php echo $_coreHelper->currency($_finalPriceInclTax, true, false) ?> | |
| </span> | |
| </span> | |
| <?php endif; ?> | |
| <?php else: ?> | |
| <?php if ($_weeeTaxAmount && $_weeeHelper->typeOfDisplay($_product, 0)): // including ?> | |
| <span class="regular-price" id="product-price-<?php echo $_id ?><?php echo $this->getIdSuffix() ?>"> | |
| <?php if(!in_array($idSuffix, $idSuffixArray)): ?> | |
| <?php echo str_replace('class="price"', 'class="price" itemprop="price"', $_coreHelper->currency($_price + $_weeeTaxAmount, true, true)); ?> | |
| <?php else: ?> | |
| <?php echo $_coreHelper->currency($_price + $_weeeTaxAmount, true, true); ?> | |
| <?php endif; ?> | |
| </span> | |
| <?php elseif ($_weeeTaxAmount && $_weeeHelper->typeOfDisplay($_product, 1)): // incl. + weee ?> | |
| <span class="regular-price" id="product-price-<?php echo $_id ?><?php echo $this->getIdSuffix() ?>"> | |
| <?php if(!in_array($idSuffix, $idSuffixArray)): ?> | |
| <?php echo str_replace('class="price"', 'class="price" itemprop="price"', $_coreHelper->currency($_price + $_weeeTaxAmount, true, true)); ?> | |
| <?php else: ?> | |
| <?php echo $_coreHelper->currency($_price + $_weeeTaxAmount, true, true); ?> | |
| <?php endif; ?> | |
| </span> | |
| <span class="weee">( | |
| <?php foreach ($_weeeTaxAttributes as $_weeeTaxAttribute): ?> | |
| <?php echo $_weeeSeparator; ?> | |
| <?php echo $_weeeTaxAttribute->getName(); ?>: <?php echo $_coreHelper->currency($_weeeTaxAttribute->getAmount(), true, true); ?> | |
| <?php $_weeeSeparator = ' + '; ?> | |
| <?php endforeach; ?> | |
| )</span> | |
| <?php elseif ($_weeeTaxAmount && $_weeeHelper->typeOfDisplay($_product, 4)): // incl. + weee ?> | |
| <span class="regular-price" id="product-price-<?php echo $_id ?><?php echo $this->getIdSuffix() ?>"> | |
| <?php if(!in_array($idSuffix, $idSuffixArray)): ?> | |
| <?php echo str_replace('class="price"', 'class="price" itemprop="price"', $_coreHelper->currency($_price + $_weeeTaxAmount, true, true)); ?> | |
| <?php else: ?> | |
| <?php echo $_coreHelper->currency($_price + $_weeeTaxAmount, true, true); ?> | |
| <?php endif; ?> | |
| </span> | |
| <span class="weee">( | |
| <?php foreach ($_weeeTaxAttributes as $_weeeTaxAttribute): ?> | |
| <?php echo $_weeeSeparator; ?> | |
| <?php echo $_weeeTaxAttribute->getName(); ?>: <?php echo $_coreHelper->currency($_weeeTaxAttribute->getAmount() + $_weeeTaxAttribute->getTaxAmount(), true, true); ?> | |
| <?php $_weeeSeparator = ' + '; ?> | |
| <?php endforeach; ?> | |
| )</span> | |
| <?php elseif ($_weeeTaxAmount && $_weeeHelper->typeOfDisplay($_product, 2)): // excl. + weee + final ?> | |
| <span class="regular-price"><?php echo $_coreHelper->currency($_price,true,true) ?></span><br /> | |
| <?php foreach ($_weeeTaxAttributes as $_weeeTaxAttribute): ?> | |
| <span class="weee"> | |
| <?php echo $_weeeTaxAttribute->getName(); ?>: <?php echo $_coreHelper->currency($_weeeTaxAttribute->getAmount(), true, true); ?> | |
| </span> | |
| <?php endforeach; ?> | |
| <span class="regular-price" id="product-price-<?php echo $_id ?><?php echo $this->getIdSuffix() ?>"> | |
| <?php echo $_coreHelper->currency($_price + $_weeeTaxAmount, true, true) ?> | |
| </span> | |
| <?php else: ?> | |
| <span class="regular-price" id="product-price-<?php echo $_id ?><?php echo $this->getIdSuffix() ?>"> | |
| <?php if ($_finalPrice == $_price): ?> | |
| <?php if(!in_array($idSuffix, $idSuffixArray)): ?> | |
| <?php echo str_replace('class="price"', 'class="price" itemprop="price"', $_coreHelper->currency($_price, true, true)); ?> | |
| <?php else: ?> | |
| <?php echo $_coreHelper->currency($_price, true, true); ?> | |
| <?php endif; ?> | |
| <?php else: ?> | |
| <?php if(!in_array($idSuffix, $idSuffixArray)): ?> | |
| <?php echo str_replace('class="price"', 'class="price" itemprop="price"', $_coreHelper->currency($_finalprice, true, true)); ?> | |
| <?php else: ?> | |
| <?php echo $_coreHelper->currency($_finalprice, true, true); ?> | |
| <?php endif; ?> | |
| <?php endif; ?> | |
| </span> | |
| <?php endif; ?> | |
| <?php endif; ?> | |
| <?php else: /* if ($_finalPrice == $_price): */ ?> | |
| <?php $_originalWeeeTaxAmount = $_weeeHelper->getOriginalAmount($_product); ?> | |
| <?php if ($_weeeTaxAmount && $_weeeHelper->typeOfDisplay($_product, 0)): // including ?> | |
| <p class="old-price"> | |
| <span class="price-label"><?php echo $this->__('Regular Price:') ?></span> | |
| <span class="price" id="old-price-<?php echo $_id ?><?php echo $this->getIdSuffix() ?>"> | |
| <?php echo $_coreHelper->currency($_regularPrice + $_originalWeeeTaxAmount, true, false) ?> | |
| </span> | |
| </p> | |
| <?php if ($_taxHelper->displayBothPrices()): ?> | |
| <p class="special-price"> | |
| <span class="price-label"><?php echo $this->__('Special Price:') ?></span> | |
| <span class="price-excluding-tax"> | |
| <span class="label"><?php echo $this->helper('tax')->__('Excl. Tax:') ?></span> | |
| <span class="price" <?php if(!in_array($idSuffix, $idSuffixArray)): ?> itemprop="price"<?php endif; ?> id="price-excluding-tax-<?php echo $_id ?><?php echo $this->getIdSuffix() ?>"> | |
| <?php echo $_coreHelper->currency($_finalPrice + $_weeeTaxAmount, true, false) ?> | |
| </span> | |
| </span> | |
| <span class="price-including-tax"> | |
| <span class="label"><?php echo $this->helper('tax')->__('Incl. Tax:') ?></span> | |
| <span class="price" id="price-including-tax-<?php echo $_id ?><?php echo $this->getIdSuffix() ?>"> | |
| <?php echo $_coreHelper->currency($_finalPriceInclTax + $_weeeTaxAmountInclTaxes, true, false) ?> | |
| </span> | |
| </span> | |
| </p> | |
| <?php else: ?> | |
| <p class="special-price"> | |
| <span class="price-label"><?php echo $this->__('Special Price:') ?></span> | |
| <span class="price" <?php if(!in_array($idSuffix, $idSuffixArray)): ?> itemprop="price"<?php endif; ?> id="product-price-<?php echo $_id ?><?php echo $this->getIdSuffix() ?>"> | |
| <?php echo $_coreHelper->currency($_finalPrice + $_weeeTaxAmountInclTaxes, true, false) ?> | |
| </span> | |
| </p> | |
| <?php endif; ?> | |
| <?php elseif ($_weeeTaxAmount && $_weeeHelper->typeOfDisplay($_product, 1)): // incl. + weee ?> | |
| <p class="old-price"> | |
| <span class="price-label"><?php echo $this->__('Regular Price:') ?></span> | |
| <span class="price" id="old-price-<?php echo $_id ?><?php echo $this->getIdSuffix() ?>"> | |
| <?php echo $_coreHelper->currency($_regularPrice + $_originalWeeeTaxAmount, true, false) ?> | |
| </span> | |
| </p> | |
| <p class="special-price"> | |
| <span class="price-label"><?php echo $this->__('Special Price:') ?></span> | |
| <span class="price-excluding-tax"> | |
| <span class="label"><?php echo $this->helper('tax')->__('Excl. Tax:') ?></span> | |
| <span class="price" <?php if(!in_array($idSuffix, $idSuffixArray)): ?> itemprop="price"<?php endif; ?> id="price-excluding-tax-<?php echo $_id ?><?php echo $this->getIdSuffix() ?>"> | |
| <?php echo $_coreHelper->currency($_finalPrice + $_weeeTaxAmount, true, false) ?> | |
| </span> | |
| </span> | |
| <span class="weee">( | |
| <?php foreach ($_weeeTaxAttributes as $_weeeTaxAttribute): ?> | |
| <?php echo $_weeeSeparator; ?> | |
| <?php echo $_weeeTaxAttribute->getName(); ?>: <?php echo $_coreHelper->currency($_weeeTaxAttribute->getAmount(), true, true); ?> | |
| <?php $_weeeSeparator = ' + '; ?> | |
| <?php endforeach; ?> | |
| )</span> | |
| <span class="price-including-tax"> | |
| <span class="label"><?php echo $this->helper('tax')->__('Incl. Tax:') ?></span> | |
| <span class="price" id="price-including-tax-<?php echo $_id ?><?php echo $this->getIdSuffix() ?>"> | |
| <?php echo $_coreHelper->currency($_finalPriceInclTax + $_weeeTaxAmountInclTaxes, true, false) ?> | |
| </span> | |
| </span> | |
| </p> | |
| <?php elseif ($_weeeTaxAmount && $_weeeHelper->typeOfDisplay($_product, 4)): // incl. + weee ?> | |
| <p class="old-price"> | |
| <span class="price-label"><?php echo $this->__('Regular Price:') ?></span> | |
| <span class="price" id="old-price-<?php echo $_id ?><?php echo $this->getIdSuffix() ?>"> | |
| <?php echo $_coreHelper->currency($_regularPrice + $_originalWeeeTaxAmount, true, false) ?> | |
| </span> | |
| </p> | |
| <p class="special-price"> | |
| <span class="price-label"><?php echo $this->__('Special Price:') ?></span> | |
| <span class="price-excluding-tax"> | |
| <span class="label"><?php echo $this->helper('tax')->__('Excl. Tax:') ?></span> | |
| <span class="price" <?php if(!in_array($idSuffix, $idSuffixArray)): ?> itemprop="price"<?php endif; ?> id="price-excluding-tax-<?php echo $_id ?><?php echo $this->getIdSuffix() ?>"> | |
| <?php echo $_coreHelper->currency($_finalPrice + $_weeeTaxAmount, true, false) ?> | |
| </span> | |
| </span> | |
| <span class="weee">( | |
| <?php foreach ($_weeeTaxAttributes as $_weeeTaxAttribute): ?> | |
| <?php echo $_weeeSeparator; ?> | |
| <?php echo $_weeeTaxAttribute->getName(); ?>: <?php echo $_coreHelper->currency($_weeeTaxAttribute->getAmount() + $_weeeTaxAttribute->getTaxAmount(), true, true); ?> | |
| <?php $_weeeSeparator = ' + '; ?> | |
| <?php endforeach; ?> | |
| )</span> | |
| <span class="price-including-tax"> | |
| <span class="label"><?php echo $this->helper('tax')->__('Incl. Tax:') ?></span> | |
| <span class="price" id="price-including-tax-<?php echo $_id ?><?php echo $this->getIdSuffix() ?>"> | |
| <?php echo $_coreHelper->currency($_finalPriceInclTax + $_weeeTaxAmountInclTaxes, true, false) ?> | |
| </span> | |
| </span> | |
| </p> | |
| <?php elseif ($_weeeTaxAmount && $_weeeHelper->typeOfDisplay($_product, 2)): // excl. + weee + final ?> | |
| <p class="old-price"> | |
| <span class="price-label"><?php echo $this->__('Regular Price:') ?></span> | |
| <span class="price" id="old-price-<?php echo $_id ?><?php echo $this->getIdSuffix() ?>"> | |
| <?php echo $_coreHelper->currency($_regularPrice, true, false) ?> | |
| </span> | |
| </p> | |
| <p class="special-price"> | |
| <span class="price-label"><?php echo $this->__('Special Price:') ?></span> | |
| <span class="price-excluding-tax"> | |
| <span class="label"><?php echo $this->helper('tax')->__('Excl. Tax:') ?></span> | |
| <span class="price" <?php if(!in_array($idSuffix, $idSuffixArray)): ?> itemprop="price"<?php endif; ?> id="price-excluding-tax-<?php echo $_id ?><?php echo $this->getIdSuffix() ?>"> | |
| <?php echo $_coreHelper->currency($_finalPrice, true, false) ?> | |
| </span> | |
| </span> | |
| <?php foreach ($_weeeTaxAttributes as $_weeeTaxAttribute): ?> | |
| <span class="weee"> | |
| <?php echo $_weeeTaxAttribute->getName(); ?>: <?php echo $_coreHelper->currency($_weeeTaxAttribute->getAmount(), true, true); ?> | |
| </span> | |
| <?php endforeach; ?> | |
| <span class="price-including-tax"> | |
| <span class="label"><?php echo $this->helper('tax')->__('Incl. Tax:') ?></span> | |
| <span class="price" id="price-including-tax-<?php echo $_id ?><?php echo $this->getIdSuffix() ?>"> | |
| <?php echo $_coreHelper->currency($_finalPriceInclTax + $_weeeTaxAmountInclTaxes, true, false) ?> | |
| </span> | |
| </span> | |
| </p> | |
| <?php else: // excl. ?> | |
| <p class="old-price"> | |
| <span class="price-label"><?php echo $this->__('Regular Price:') ?></span> | |
| <span class="price" id="old-price-<?php echo $_id ?><?php echo $this->getIdSuffix() ?>"> | |
| <?php echo $_coreHelper->currency($_regularPrice, true, false) ?> | |
| </span> | |
| </p> | |
| <?php if ($_taxHelper->displayBothPrices()): ?> | |
| <p class="special-price"> | |
| <span class="price-label"><?php echo $this->__('Special Price:') ?></span> | |
| <span class="price-excluding-tax"> | |
| <span class="label"><?php echo $this->helper('tax')->__('Excl. Tax:') ?></span> | |
| <span class="price" <?php if(!in_array($idSuffix, $idSuffixArray)): ?> itemprop="price"<?php endif; ?> id="price-excluding-tax-<?php echo $_id ?><?php echo $this->getIdSuffix() ?>"> | |
| <?php echo $_coreHelper->currency($_finalPrice, true, false) ?> | |
| </span> | |
| </span> | |
| <span class="price-including-tax"> | |
| <span class="label"><?php echo $this->helper('tax')->__('Incl. Tax:') ?></span> | |
| <span class="price" id="price-including-tax-<?php echo $_id ?><?php echo $this->getIdSuffix() ?>"> | |
| <?php echo $_coreHelper->currency($_finalPriceInclTax, true, false) ?> | |
| </span> | |
| </span> | |
| </p> | |
| <?php else: ?> | |
| <p class="special-price"> | |
| <span class="price-label"><?php echo $this->__('Special Price:') ?></span> | |
| <span class="price" <?php if(!in_array($idSuffix, $idSuffixArray)): ?> itemprop="price"<?php endif; ?> id="product-price-<?php echo $_id ?><?php echo $this->getIdSuffix() ?>"> | |
| <?php echo $_coreHelper->currency($_finalPrice, true, false) ?> | |
| </span> | |
| </p> | |
| <?php endif; ?> | |
| <?php endif; ?> | |
| <?php endif; /* if ($_finalPrice == $_price): */ ?> | |
| <?php if ($this->getDisplayMinimalPrice() && $_minimalPriceValue && $_minimalPriceValue < $_product->getFinalPrice()): ?> | |
| <?php $_minimalPriceDisplayValue = $_minimalPrice; ?> | |
| <?php if ($_weeeTaxAmount && $_weeeHelper->typeOfDisplay($_product, array(0, 1, 4))): ?> | |
| <?php $_minimalPriceDisplayValue = $_minimalPrice + $_weeeTaxAmount; ?> | |
| <?php endif; ?> | |
| <?php if ($this->getUseLinkForAsLowAs()):?> | |
| <a href="<?php echo $_product->getProductUrl(); ?>" class="minimal-price-link"> | |
| <?php else:?> | |
| <span class="minimal-price-link"> | |
| <?php endif?> | |
| <span class="label"><?php echo $this->__('As low as:') ?></span> | |
| <span class="price" id="product-minimal-price-<?php echo $_id ?><?php echo $this->getIdSuffix() ?>"> | |
| <?php echo $_coreHelper->currency($_minimalPriceDisplayValue, true, false) ?> | |
| </span> | |
| <?php if ($this->getUseLinkForAsLowAs()):?> | |
| </a> | |
| <?php else:?> | |
| </span> | |
| <?php endif?> | |
| <?php endif; /* if ($this->getDisplayMinimalPrice() && $_minimalPrice && $_minimalPrice < $_finalPrice): */ ?> | |
| </div> | |
| <?php else: /* if (!$_product->isGrouped()): */ ?> | |
| <?php | |
| $_exclTax = $_taxHelper->getPrice($_product, $_minimalPriceValue); | |
| $_inclTax = $_taxHelper->getPrice($_product, $_minimalPriceValue, true); | |
| ?> | |
| <?php if ($this->getDisplayMinimalPrice() && $_minimalPriceValue): ?> | |
| <div class="price-box"> | |
| <p class="minimal-price"> | |
| <span class="price-label"><?php echo $this->__('Starting at:') ?></span> | |
| <?php if ($_taxHelper->displayBothPrices()): ?> | |
| <span class="price-excluding-tax"> | |
| <span class="label"><?php echo $this->helper('tax')->__('Excl. Tax:') ?></span> | |
| <span class="price" id="price-excluding-tax-<?php echo $_id ?><?php echo $this->getIdSuffix() ?>"> | |
| <?php echo $_coreHelper->currency($_exclTax, true, false) ?> | |
| </span> | |
| </span> | |
| <span class="price-including-tax"> | |
| <span class="label"><?php echo $this->helper('tax')->__('Incl. Tax:') ?></span> | |
| <span class="price" id="price-including-tax-<?php echo $_id ?><?php echo $this->getIdSuffix() ?>"> | |
| <?php echo $_coreHelper->currency($_inclTax, true, false) ?> | |
| </span> | |
| </span> | |
| <?php else: ?> | |
| <?php | |
| $_showPrice = $_inclTax; | |
| if (!$_taxHelper->displayPriceIncludingTax()) { | |
| $_showPrice = $_exclTax; | |
| } | |
| ?> | |
| <span class="price" id="product-minimal-price-<?php echo $_id ?><?php echo $this->getIdSuffix() ?>"> | |
| <?php echo $_coreHelper->currency($_showPrice, true, false) ?> | |
| </span> | |
| <?php endif; ?> | |
| </p> | |
| </div> | |
| <?php endif; /* if ($this->getDisplayMinimalPrice() && $_minimalPrice): */ ?> | |
| <?php endif; /* if (!$_product->isGrouped()): */ ?> |
It's the addition of "-aggregate" to the ID suffix. With this ID the Magento's Javascript cannot identify the price anymore. Therefor it will not change when a visitor of the shop configures a product.
The addition of "-aggregate" is set in catalog/product/view/type/default.phtml by me. If a price ID has -aggregate I will add itemprop=price. Otherwise I don't. You don't want to add itemprop=price to prices with idSuffix = -upsell, _clone and perhaps more...
Instead of my check if the idSuffix = -aggregate I can turn it around and check if it has not -upsell nor _clone nor ??
With this change you don't have to add -aggregate anymore to catalog/product/view/type/default.phtml, the price changes when the visitor of the shop configures the product and itemprop=price is added to the correct prices.
I've implemented this change in the code above.
thx... @JosephLeedy for pointing this out.
I'm glad you found a fix, thanks!
Great bit of code. Thanks. I just made the following edit to stop related products on the product page having the price markup
$idSuffixArray = array( '-upsell', '-related', '_clone' );
thx @charlesastwood for your attribution. Added it to the gist file
Unless you comment out/remove all 36 occurrences of
<?php echo $this->getIdSuffix() ?>in the HTML element id attributes, price adjustment for configurable products will not work. This appears to be a bug in Magento's JavaScript - the id suffix is not being accounted for when getting the price element. I have yet to find any side effects from removing the suffix.