EE 1.14を使用して、何らかの理由で上記で提案された方法を使用して「おかしい」番号を取得していました。$childPriceLowest
そして$childPriceHighest
、真の最小値と最大値のすべての時間を返していませんでした。時々、複数の設定オプションなどで、中間値を見ました。
私はこれを使ってしまいました:
//get associated (child) products
$childProducts = Mage::getModel('catalog/product_type_configurable')
->getUsedProducts(null,$_product);
//cycle through child products, dump prices in an array....
foreach($childProducts as $child){
$_child = Mage::getModel('catalog/product')->load($child->getId());
$childPrices[] = $_child->getPrice();
}
// concentrate the array to unique values and sort ascending....
$childPrices = array_unique($childPrices, SORT_NUMERIC);
sort($childPrices); // array containing required values
その後、これは範囲をエコーします:
<?php echo Mage::helper('core')->currency( $childPrices[0], true, false); ?>
<span class="config-price-divider"> - </span>
<?php echo Mage::helper('core')->currency( end($childPrices), true, false)?>
(例:「$ 10.00-$ 30.00」)