Сообщение #3 makki » 31.07.2018, 12:11
Towedlied писал(а):Добрый день, как можно сделать отображение списка брендов по имени от A-Z (А-Я). Сейчас бредны выводятся пользователю сортировкой по позиции, брендов более 50. В админке этого не надо, только пользователю. Спасибо)
1) В файле api/Brands.php1.1) после строки
добавьте
Код: Выделить всё
$order = 'b.position';
if(!empty($filter['sort'])) {
switch ($filter['sort']) {
case 'name':
$order = 'b.name ASC';
break;
}
}
1.2) ниже в sql запросе (в строке 94 в OkayCMS 2.2.x) вместо
напишите
2) В файле view/BrandsView.php вместо
Код: Выделить всё
$brands = $this->brands->get_brands(array('visible_brand'=>1));
напишите
Код: Выделить всё
$brands = $this->brands->get_brands(array('visible_brand'=>1, 'sort'=>'name'));
[quote="Towedlied"]Добрый день, как можно сделать отображение списка брендов по имени от A-Z (А-Я). Сейчас бредны выводятся пользователю сортировкой по позиции, брендов более 50. В админке этого не надо, только пользователю. Спасибо)[/quote]
[b]1) В файле api/Brands.php[/b]
1.1) после строки [code]$other_filter = '';[/code] добавьте [code]
$order = 'b.position';
if(!empty($filter['sort'])) {
switch ($filter['sort']) {
case 'name':
$order = 'b.name ASC';
break;
}
}[/code]
1.2) ниже в sql запросе (в строке 94 в OkayCMS 2.2.x) вместо [code]ORDER BY b.position[/code] напишите [code]ORDER BY $order[/code]
[b]2) В файле view/BrandsView.php [/b]
вместо [code]$brands = $this->brands->get_brands(array('visible_brand'=>1));[/code] напишите [code]$brands = $this->brands->get_brands(array('visible_brand'=>1, 'sort'=>'name'));[/code]
Cоздание и расширение функционала интернет-магазина на платформе OkayCMS 2 (с 3-й и 4-й версией не работаю)