наверное должен быть value для скидки.
Нет.
В коде шаблона по скидке сортировать невозможно. И невозможно отсортировать по скидке в самом запросе (т.к. итоговая цена вычисляется после запросов к БД).
Вариант с товарами для текущей страницы:
/controllers/front/CategoryController.php
после:
Код:
$this->cat_products = $this->category->getProducts($this->context->language->id, (int)$this->p, (int)$this->n, $this->orderBy, $this->orderWay);
добавить:
Код:
if (Tools::getValue('orderby') === 'reduction')
{
foreach ($this->cat_products as &$row)
$row['price_tmp'] = $row['price_without_reduction'] - $row['price'];
if (Tools::getValue('orderway') === 'asc')
uasort($this->cat_products, 'cmpPriceAsc');
else
uasort($this->cat_products, 'cmpPriceDesc');
}
после чего в запросах можно использовать:
Код:
http://ваш-магазин.ru/3-название-категории?orderby=reduction&orderway=desc