我在目录列表中添加了排序方法的日期。如果我选择按日期排序,列表按日期排序 - 这是行之有效的。 但是,我应该如何设置默认排序按日期(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
我在本地文件夹/应用程序/代码/本地/ 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;
}
您具体是如何的日期添加到目录列表的排序方法? 'created_at'不是一个EAV属性,所以你没有通过后端做我想。请在你的问题中提供更多细节。 – Alex
我为你添加了“编辑:1”paragraf。你能检查一下吗? – Krzysztof
顺便说一下,在StackOverflow(S.O.)上,当您发现独立于S.O.的自己的问题时,鼓励性的工作流程。是回答它并接受你自己的答案。它不仅让人们有机会奖励你的好问题和答案,还可以让未来的人更容易看到问题,并鼓励其他人发布解决方案。 –