Перейти к публикации
Поиск в
  • Дополнительно...
Искать результаты, содержащие...
Искать результаты в...

vladimirr89

Новичок
  
  • Публикаций

    4
  • Зарегистрирован

  • Посещение

Посетители профиля

Блок последних посетителей выключен и не отображается другим пользователям.

Достижения vladimirr89

Newbie

Newbie (1/14)

  • First Post
  • Week One Done
  • One Month Later
  • One Year In
  • Conversation Starter

Последние медали

0

Репутация

  1. Собсно вод код, в нем четко написано "сортируем по полю sort_order", но почему-то оно сортирует все равно по name. Удалял это поле, разные методы пробовал другие, никаких изменений. Изменил в базе данных название фильтра, в админке название сменилось, а на сайте нифига. Что это вообще такое, куда сохраняются эти данные?? Я не особо еще в опен карт, в какие кэши еще сохраняется информация кроме system/storage/cache? Сижу ковыряю уже 2 часа, не понимаю в чем проблема. Подскажите пожалуйста! public function getCategoryFilters($category_id) { $implode = array(); $query = $this->db->query("SELECT filter_id FROM " . DB_PREFIX . "category_filter WHERE category_id = '" . (int)$category_id . "'"); foreach ($query->rows as $result) { $implode[] = (int)$result['filter_id']; } $filter_group_data = array(); if ($implode) { $filter_group_query = $this->db->query("SELECT DISTINCT f.filter_group_id, fgd.name, fg.sort_order FROM " . DB_PREFIX . "filter f LEFT JOIN " . DB_PREFIX . "filter_group fg ON (f.filter_group_id = fg.filter_group_id) LEFT JOIN " . DB_PREFIX . "filter_group_description fgd ON (fg.filter_group_id = fgd.filter_group_id) WHERE f.filter_id IN (" . implode(',', $implode) . ") AND fgd.language_id = '" . (int)$this->config->get('config_language_id') . "' GROUP BY f.filter_group_id ORDER BY fg.sort_order, LCASE(fgd.name)"); foreach ($filter_group_query->rows as $filter_group) { $filter_data = array(); $filter_query = $this->db->query("SELECT DISTINCT f.filter_id, fd.name FROM " . DB_PREFIX . "filter f LEFT JOIN " . DB_PREFIX . "filter_description fd ON (f.filter_id = fd.filter_id) WHERE f.filter_id IN (" . implode(',', $implode) . ") AND f.filter_group_id = '" . (int)$filter_group['filter_group_id'] . "' AND fd.language_id = '" . (int)$this->config->get('config_language_id') . "' ORDER BY f.sort_order, LCASE(fd.name)"); foreach ($filter_query->rows as $filter) { $filter_data[] = array( 'filter_id' => $filter['filter_id'], 'name' => $filter['name'] ); } if ($filter_data) { $filter_group_data[] = array( 'filter_group_id' => $filter_group['filter_group_id'], 'name' => $filter_group['name'], 'filter' => $filter_data ); } } } return $filter_group_data; }
  2. Я бы с радостью, но уже все настроено, затык на этой сортировке фильтров случился. Может кэш какой почистить надо или есть файлы, отвечающие за это, я бы там прописал что-то типа "orderBy('id')"
  3. Есть простейший фильтр, в котором задан порядок сортировки (см. скриншот). НО почему то на выходе все равно сортирует по алфавиту, где задать этот порядок, чтобы сортировало как надо?
Гость
×
  • Создать...

Важная информация

На нашем сайте используются файлы cookie и происходит обработка некоторых персональных данных пользователей, чтобы улучшить пользовательский интерфейс. Чтобы узнать для чего и какие персональные данные мы обрабатываем перейдите по ссылке. Если Вы нажмете «Я даю согласие», это означает, что Вы понимаете и принимаете все условия, указанные в этом Уведомлении о Конфиденциальности.