Здравствуйте, форумчане. Задача достаточно простая, но в то же время актуальная для многих интернет-магазинов. Настроена синхронизация с 1С, при удалении товаров из базы, цена автоматически обнуляется. Нужно настроить сортировку по цене таким образом, чтобы товары с нулевым значением цены отображались в конце списка, а сортировка шла от "1" и более
Знаю, что нужно выполнить правки в .../catalog/controller/product/category.php и ...catalog/model/catalog/product.php
if (isset($data['sort']) && in_array($data['sort'], $sort_data)) {
if ($data['sort'] == 'pd.name' || $data['sort'] == 'p.model') {
$sql .= " ORDER BY LCASE(" . $data['sort'] . ")";
} elseif ($data['sort'] == 'p.price') {
$sql .= " ORDER BY (CASE WHEN special IS NOT NULL THEN special WHEN discount IS NOT NULL THEN discount ELSE p.price END)";
} else {
$sql .= " ORDER BY " . $data['sort'];
}
} else {
$sql .= " ORDER BY p.sort_order";
}
Помогите, пожалуйста, разобраться