2012-07-01 2 views
0

Я хочу изменить сортировку по каталогу Magento (1.6) по умолчанию, чтобы добавить опцию , сортируя по объекту ID, а затем сделайте это сортировкой по умолчанию.Magento Sort By Entity ID Descending

(Поиск по всему StackOverflow и Google, но может только найти решения, которые либо для более старых версий Magento или редактирования файлов ядра.)

Заранее спасибо!

+0

Почему вы хотите отсортировать по атрибуту, который существует из-за - и должен использоваться только в контексте схемы хранения? – benmarks

+0

@benmarks, пожалуйста, уточните, мне действительно интересно, почему это было бы плохое кодирование. Идентификатор никогда не изменится, и сортировка по убыванию по идентификатору всегда будет давать мне самые новые продукты, которые я ищу. Благодарю. – mamoma

+0

Ответ на ответ ниже :-) – benmarks

ответ

0

Лучший способ пойти об этом, не изменяя основных файлов необходимо скопировать файл Toolbar.php расположена по адресу:

/app/code/core/Mage/Catalog/Block/Product/List/Toolbar.php 

затем создать новый путь к каталогу (если вы еще не создали один) в:

/app/code/local/Mage/Catalog/Block/Product/List/Toolbar.php 

Теперь замените следующие из строки 232:

if ($this->getCurrentOrder()) { 
     $this->_collection->setOrder($this->getCurrentOrder(), $this->getCurrentDirection()); 
    } 

к

if ($this->getCurrentOrder()) { 
if(($this->getCurrentOrder())=='position'){ //defines the sort option 
//sort by entity_id (descending) 
$this->_collection->addAttributeToSort('entity_id','desc'); 
} else { 
$this->_collection->setOrder($this->getCurrentOrder(),$this->getCurrentDirection()); 
} 
} 

Наконец, обновите кеш и обновите кеш-память на своем бэкэнде Magento и готовы к работе.