2
我想定製Magento的價格分層導航ALA這個線程: http://www.magentocommerce.com/boards/viewthread/65135/P15/#t278667語法錯誤
但是當我複製並粘貼他的代碼,我遇到一個錯誤,請參閱下面的代碼。 任何想法?
protected function _getItemsData()
{
$key = $this->_getCacheKey();
$data = $this->getLayer()->getAggregator()->getCacheData($key);
if ($data === null) {
$range = 100;// $this->getPriceRange();
$minEntries = 30;
$minPercentage = 12; //overrides the previous line if set, sets minEntries to $minPercentage of total items
$lastRange = 5000; //collects everything over this value into one range, must be a multiple of $range. Set to 0 for no last range.
$lastRangeIndex = $lastRange == 0 ? 0 : intval($lastRange/$range);
$dbRanges = $this->getRangeItemCounts($range);
if (($minPercentage > 0) && ($minPercentage < 100)) {
$itemCount = array_sum($dbRanges);
$minEntriesByPercentage = intval($itemCount * ($minPercentage/100));
$minEntries = $minEntriesByPercentage;
}
$data = array();
$collect = 0;
$collectIndex = 0;
$collections = 1;
$lastIndex = 0;
foreach ($dbRanges as $index=>$count) {
if ((($collect + $count) >= $minEntries) && (($index <= $lastRangeIndex) || ($lastRangeIndex == 0)) {
$collections = $collectIndex == 0 ? 1 : ($index - $collectIndex) + 1;
$data[] = array(
'label' => $this->_renderItemLabel($range * $collections, $index/$collections),
'value' => ($index/$collections) . ',' . $range * $collections,
'count' => $count + $collect,
);
$collect = 0;
$collections = 1;
$collectIndex = 0;
} else {
$collect = $collect + $count;
if ($collectIndex == 0) {
$collectIndex = $index;
}
$collections = $collectIndex == $index ? 1 : ($index - $collectIndex) + 1;
}
$lastIndex = $index;
}
if ($collect > 0) {
$data[] = array(
'label' => $this->_renderItemLabel($range * $collections, $lastIndex/$collections),
'value' => ($lastIndex/$collections) . ',' . $range * $collections,
'count' => $collect,
);
}
$tags = array(
Mage_Catalog_Model_Product_Type_Price::CACHE_TAG,
);
$tags = $this->getLayer()->getStateTags($tags);
$this->getLayer()->getAggregator()->saveCacheData($data, $key, $tags);
}
return $data;
}
有什麼錯誤? – Sara