ilm

Как изменить порядок сортировки по-умолчанию?

Рекомендуемые сообщения

ilm    13

Добрый день.
OCStore 2.1.0.2.1

Надо изменить порядок сортировки по-умолчанию, чтобы сортировалось по цене.

В файле /catalog/controller/product/category.php
меняю 
 

		if (isset($this->request->get['sort'])) {
			$sort = $this->request->get['sort'];
		} else {
			$sort = 'p.sort_order';
		}

		if (isset($this->request->get['order'])) {
			$order = $this->request->get['order'];
		} else {
			$order = 'ASC';
		}

на 

		if (isset($this->request->get['sort'])) {
			$sort = $this->request->get['sort'];
		} else {
			$sort = 'p.price';
		}

		if (isset($this->request->get['order'])) {
			$order = $this->request->get['order'];
		} else {
			$order = 'ASC';
		}

Но результата это не дает. Модификаторы чистил, кеш обновлял.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Exploits    162

А товару присвоили порядок?

Причем здесь порядок сиртировки - если надо по цене?)

Что бы сортировало по цене идем в catalog/controller/product/category.php

Ищем строки:

$data = array(
'filter_category_id' => $category_id,
'filter_filter'      => $filter, 
'sort'               => $sort,
'order'              => $order,
'start'              => ($page - 1) * $limit,
'limit'              => $limit
);

И соответственно перед первой строкой этого участка $data = array( пишем:

if (!isset($this->request->get['sort'])) {
$sort = 'p.price';
}
if (!isset($this->request->get['order'])) {
$order = 'ASC'; //от дешевых к дорогим (DESC от дорогим к дешевым)
}

После этого будет по умолчанию сортировать по цене.

Изменено пользователем Exploits

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
ilm    13

Не помогло.
Это же по сути дублирует тот код, что я написал.
В том же файле, 18 строка

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
pantagruel964    219

 

Причем здесь порядок сиртировки - если надо по цене?)

Во сне писал, читал снизу вверх  :?

 

Не помогло.

Это же по сути дублирует тот код, что я написал.

В том же файле, 18 строка

Правок из первого сообщения должно хватить. Фильтр используете?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Exploits    162

Не помогло.

Это же по сути дублирует тот код, что я написал.

В том же файле, 18 строка

Код Ваш не посмотрел, да должно работать, но что-то фильтрует по другому, попробуйте впилить так:

$data = array(
'filter_category_id' => $category_id,
'filter_filter'      => $filter, 
'sort'               => 'p.price',
'order'              => 'ASC',
'start'              => ($page - 1) * $limit,
'limit'              => $limit
);

работает? Если нет - то смотрите не сортирует ли что-то массив товаров уже после выборки если нет - то смотрите в модели что там.

Изменено пользователем Exploits

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Exploits    162

Код Ваш не посмотрел, да должно работать, но что-то фильтрует по другому, попробуйте впилить так:

$data = array(
'filter_category_id' => $category_id,
'filter_filter'      => $filter, 
'sort'               => 'p.price',
'order'              => 'ASC',
'start'              => ($page - 1) * $limit,
'limit'              => $limit
);

работает? Если нет - то смотрите не сортирует ли что-то массив товаров уже после выборки если нет - то смотрите в модели что там.

И по фильтру - да может быть.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
itvoin    0
В 23.05.2016 в 11:44, Exploits сказал:

Код Ваш не посмотрел, да должно работать, но что-то фильтрует по другому, попробуйте впилить так:


$data = array(
'filter_category_id' => $category_id,
'filter_filter'      => $filter, 
'sort'               => 'p.price',
'order'              => 'ASC',
'start'              => ($page - 1) * $limit,
'limit'              => $limit
);

работает? Если нет - то смотрите не сортирует ли что-то массив товаров уже после выборки если нет - то смотрите в модели что там.

После перестала работать сортировка, как можно поправить?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Exploits    162
5 минут назад, itvoin сказал:

После перестала работать сортировка, как можно поправить?

вернуть все назад.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
fanatic    125
3 часа назад, itvoin сказал:

После перестала работать сортировка,

естественно, вы жестко прописали сортировку.

в коде,  из вашего первого сообщения, все сделано для того, чтобы по умолчанию была сортировка по цене

код 100% рабочий

В 23.05.2016 в 02:51, ilm сказал:

Модификаторы чистил,

в смысле обновили?

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти


  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу