Я пытаюсь добавить новый метод сортировки i'e «сортировать по высоте» в opencart.сортировать по размеру opencart
A.location является: каталог/модель/каталог/product.php -> добавил p.height здесь
$sort_data = array(
'pd.name',
'p.model',
'p.quantity',
'p.price',
'rating',
'p.sort_order',
'p.date_added',
'p.height'
);
Б. в том же файле
elseif($data['sort'] == 'p.height'){
$sql .= " ORDER BY(" . $data['sort'] . ")ASC";
/*$sql .= "SELECT * FROM". DB_PREFIX . "product p ORDER BY p.height DESC";*/
}
C. местоположение: /catalog/controller/product/category.php
$this->data['sorts'][] = array(
'text' => $this->language->get('text_size_asc'),
'value' => 'height-ASC',
'href' => $this->url->link('product/category', 'path=' . $this->request->get['path'] . '&sort=height&order=ASC' . $url)
);
Результат: я могу видеть «сортировать по высоте» в опции, но ничего не происходит, когда я выбираю его, возвращается значение сортировки по умолчанию.
Может ли кто-нибудь предложить, где я делаю неправильно?
@sanki - см. Править выше –
Вам не нужен код elseif, который у вас там есть. Просто используйте стандартный файл модели и добавьте «p.height» в массив sorts. Это все, что нужно –
@sanki - проблем нет. Не забудьте нажать на галочку слева, чтобы отметить это как ответ –