按创建日期订购产品清单

时间:2012-11-20 09:52:52

标签: magento magento-1.7

我在目录列表中为排序方法添加日期。如果我选择按日期排序,列表按日期排序 - 这是有效的。 但是,我应该如何在目录列表中设置默认的按日期排序(DESC)? 就我而言,不使用这些解决方案: catalog.xml

<action method="setDefaultDirection"><dir>desc</dir></action>
<action method="setDefaultOrder"><field>created_at</field></action>

和:
目录/块/产品/列表/ Toolbar.php

protected $_direction = 'desc';

Magento版本:1.7.0.2。

修改:1
我在本地文件夹/ app / code / local / SortByDate /中创建了一个新模块。我添加了两个文件。首先是/catalog/model/Config.php:

class SortByDate_Catalog_Model_Config extends Mage_Catalog_Model_Config {

    public function getAttributeUsedForSortByArray()
    {
        $options = parent::getAttributeUsedForSortByArray();
        if (!isset($options['created_at'])) {
            $options['created_at'] = Mage::helper('catalog')->__('Date');
        }
        return $options;
    }

}


和第二个/etc/config.xml:

 <config><global><models><catalog><rewrite><config>SortByDate_Catalog_Model_Config</config></rewrite></catalog></models></global></config>

编辑2 - 已解决 我修改了这个功能,问题就消失了。)

        public function setDefaultOrder($field)
    {
//set default order by date
        if (isset($this->_availableOrder[$field])) {
                         $this->_availableOrder = array(
                                'created_at' => $this->__('Date'),
                'name'        => $this->__('Name'),
                'price'       => $this->__('Price'),
            );
            $this->_orderField = $field;
        }
        return $this;
    }

2 个答案:

答案 0 :(得分:1)

解决了,我修改了这个功能,问题就消失了。)

    public function setDefaultOrder($field)
    {
    //set default order by date
        if (isset($this->_availableOrder[$field])) {
                         $this->_availableOrder = array(
                                'created_at' => $this->__('Date'),
                'name'        => $this->__('Name'),
                'price'       => $this->__('Price'),
            );
            $this->_orderField = $field;
        }
        return $this;
    }

答案 1 :(得分:0)

我有类似的问题,为了以一种干净的方式为我的所有网站修复它,我已经开发了一个扩展功能。

它免费且易于安装和使用。可以免费下载。

https://magento.mdnsolutions.com/extensions/mdn-sort-by-date.html

干杯,

雷纳托