Magento分层导航 - 按计数排序



我想按每个过滤器中的 # 项对每个分层导航过滤器进行排序。

这是现在显示的内容——

  • 书籍 - 1
  • 光盘 - 2
  • DVD - 20

我想展示的是——

  • DVD - 20
  • 光盘 - 2
  • 书籍 - 1

我一直在看catalog/layer/filter.phtml,但我无法弄清楚如何对magento集合进行排序。

理想情况下,我想要这样的东西:

$this->getItems()->order('Count Desc')

我怎样才能做到这一点?

找到了这样做的方法-

修改Mage/Catalog/Model/Layer/Filter/Abstract.php以在 getItems 方法中使用计数重新排序。

public function getItems()
{
    if (is_null($this->_items)) {
        $this->_initItems();
    }
    //5-16-11 Custom sort
    $items = $this->_items; 
    usort($items, array("Mage_Catalog_Model_Layer_Filter_Abstract", "sortByCount"));  
    return $items;
}
public static function sortByCount($a, $b)
{
    if ($a->getCount() == $b->getCount()) {
        return 0;
    }
    return ($a->getCount() > $b->getCount()) ? -1 : 1;
}
一个

好的起点是法师/目录/模型/图层/过滤器/属性.php。列表是在那里建立的。.

相关内容

  • 没有找到相关文章

最新更新