Перейти к содержанию

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

Может кто знающий поможет советом. Ситуация такая - делаю сортировку по скидкам, и по хитам (пока только по скидкам!) то есть если выбрано сортировка скидки то показывало товары только со скидкой. Вывод я сделал но товары выводятся все которые есть в магазине со скидками а надо из той категории где проводиться сортировка. Я знаю что нужно вот этот код

if (!empty($data['filter_category_id'])) {
			if (!empty($data['filter_sub_category'])) {
				$sql .= " AND cp.path_id = '" . (int)$data['filter_category_id'] . "'";
			} else {
				$sql .= " AND p2c.category_id = '" . (int)$data['filter_category_id'] . "'";
			}

			if (!empty($data['filter_filter'])) {
				$implode = array();

				$filters = explode(',', $data['filter_filter']);

				foreach ($filters as $filter_id) {
					$implode[] = (int)$filter_id;
				}

				$sql .= " AND pf.filter_id IN (" . implode(',', $implode) . ")";
			}
		}

добавить но пока все безуспешно.

прикрепил файл контроллера категории и модель catalog/product

category-controller.php

product-model.php

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


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

Решение проблемы изложу здесь когда все будет работать.

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


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

может кому нужно вот решение

добавить в функцию

public function getProducts($data = array()) {

перед строкой

$sql .= " LEFT JOIN " . DB_PREFIX . "product_description pd ON (p.product_id = pd.product_id) LEFT JOIN " . DB_PREFIX . "product_to_store p2s ON (p.product_id = p2s.product_id) WHERE pd.language_id = '" . (int)$this->config->get('config_language_id') . "' AND p.status = '1' AND p.date_available <= NOW() AND p2s.store_id = '" . (int)$this->config->get('config_store_id') . "'";

добавить это

if (isset($data['sort']) && ($data['sort']=='special_percent')) {
			$sql .= " INNER JOIN oc_product_special ps ON (ps.product_id = p.product_id)";
		}
		if (isset($data['sort']) && ($data['sort']=='hit')) {
			$sql .= " INNER JOIN oc_product_bestsell bs ON (bs.product_id = p.product_id) AND bs.bestsell = '1'";
		}

и в функцию

public function getTotalProducts($data = array()) {

перед строкой

$sql .= " LEFT JOIN " . DB_PREFIX . "product_description pd ON (p.product_id = pd.product_id) LEFT JOIN " . DB_PREFIX . "product_to_store p2s ON (p.product_id = p2s.product_id) WHERE pd.language_id = '" . (int)$this->config->get('config_language_id') . "' AND p.status = '1' AND p.date_available <= NOW() AND p2s.store_id = '" . (int)$this->config->get('config_store_id') . "'";

добавить тоже самое

if (isset($data['sort']) && ($data['sort']=='special_percent')) {
			$sql .= " INNER JOIN oc_product_special ps ON (ps.product_id = p.product_id)";
		}
		if (isset($data['sort']) && ($data['sort']=='hit')) {
			$sql .= " INNER JOIN oc_product_bestsell bs ON (bs.product_id = p.product_id) AND bs.bestsell = '1'";
		}

 

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


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

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

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

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

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

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

Войти

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

Войти

  • Похожий контент

    • От ipit319
      Необходимо установить (настроить) фильтр на главной странице сайта www.poodshop.ru. 
      т.е. 
      Выбор категории поиска (Все или конкретно) 
      Атрибут 1 значение от и до 
      Атрибут 2 значение от и до 
      Атрибут 3 значение от и до 
      Кнопка поиск 
      Выбор дополнительных параметров, остальные атрибуты - задание галочками
      Необходимо  использовать фильтр с возможностью установки значения условий поиска в категории как слайдером так и в ручную (ввод цифр в окошко)!
    • От LionHunter
      Здравствуйте
       
      Возможно кто-то такое делал или знает как: необходимо, чтобы товары в категории сортировались (по умолчанию) в зависимости от количества продаж. То есть, товары, которых продано  больше всего за период существования магазина были вверху и далее по убыванию.
      Это вообще реально сделать? Если вдруг есть тема, где что-то подобное уже обсуждалось - буду благодарен за подсказку.  
    • От theplastique
      1 499.00 руб
      Скачать/Купить дополнение


      TopAuto - адаптивный шаблон интернет магазина автозапчастей и автотоваров
      Каждому купившему шаблон мы гарантируем БЕСПЛАТНУЮ консультацию и поддержку. Ежедневно мы работаем над пакетным улучшением шаблона, по этому не исключено, что стоимость шаблона будет увеличиваться. Для тех кто купил шаблон обновления бесплатно, без зависимости за какую сумму он приобрел шаблон у нас.
      Стоимость шаблона 1499 руб (первый месяц продаж, после будет подорожание)
      Лицензия: Шаблон реализуется по принципу "1 покупатель – 1 домен".
      Демо главной страницы
      Демо страницы категории
      Демо страницы товара
      Демо админпанели (логин и пароль demo)
       
      TopAuto - универсальное решение для интернет магазинов автомобильной тематики. 3 различных варианта оформления, и гибкая настройка темы позволяют создать интернет магазин автозапчастей и других товаров автомобильной тематики соответствующий вашим требованиям.
      Адаптивная и кроссбраузерная верстка присутствует, по этому ваш сайт будет корректно отображаться на всех устройствах и браузерах.
       
      Помимо стандартного функционала opencart шаблон обладает рядом преимуществ:
      3 стиля шаблона (вы покупаете 3 шаблона по цене одного): 2 варианта меню (горизонтальное и вертикальное) Гибкая настройка шапки и подвала сайта: Модуль категорий с расширенным функционалом; Модуль слайдшоу; Модуль информационные блоки; Модуль подписка на новости; 3 варианта  



      Добавил theplastique Добавлено 24.10.2018 Категория Платные шаблоны Системные требования Сайт разработчика Старая цена 2499 Метод активации По запросу в ЛС
      По запросу на почту
      По скайпу
      По емейлу Ioncube Loader Требуется OpenCart 2.3 ocStore 2.3 OpenCart.Pro, ocShop  
    • От theplastique
      Каждому купившему шаблон мы гарантируем БЕСПЛАТНУЮ консультацию и поддержку. Ежедневно мы работаем над пакетным улучшением шаблона, по этому не исключено, что стоимость шаблона будет увеличиваться. Для тех кто купил шаблон обновления бесплатно, без зависимости за какую сумму он приобрел шаблон у нас.
      Стоимость шаблона 1499 руб (первый месяц продаж, после будет подорожание)
      Лицензия: Шаблон реализуется по принципу "1 покупатель – 1 домен".
      Демо главной страницы
      Демо страницы категории
      Демо страницы товара
      Демо админпанели (логин и пароль demo)
       
      TopAuto - универсальное решение для интернет магазинов автомобильной тематики. 3 различных варианта оформления, и гибкая настройка темы позволяют создать интернет магазин автозапчастей и других товаров автомобильной тематики соответствующий вашим требованиям.
      Адаптивная и кроссбраузерная верстка присутствует, по этому ваш сайт будет корректно отображаться на всех устройствах и браузерах.
       
      Помимо стандартного функционала opencart шаблон обладает рядом преимуществ:
      3 стиля шаблона (вы покупаете 3 шаблона по цене одного): 2 варианта меню (горизонтальное и вертикальное) Гибкая настройка шапки и подвала сайта: Модуль категорий с расширенным функционалом; Модуль слайдшоу; Модуль информационные блоки; Модуль подписка на новости; 3 варианта  



    • От ArtMike
      Встал вопрос о модификации стандартной сортировки и возможности добавления в неё сортировки по подкатегориям. Зачем?  Есть же куча модулей - фильтров!
      Я думаю ни для кого не секрет что больше половина трафика практически на любой ресурс идет с мобильных устройств и собственно там их (эти все крутые фильтры просто некуда пихать). А вот стандартная сортировка смотрится компактно и вполне элегантно, работает привычно и функционально для юзера. 
      Вот только бы добавить туда возможность сортировки по подкатегориям. 
      В очередной раз удивлен, что никому это не понадобилось пока и решений я не нашел, ни в РУ сегменте, ни в ЕN сегменте,
      Может кто-то реализовывал подобное? Или готов за разумное вознаграждение помочь? 
       

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

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

×

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

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