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

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

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

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'";
		}

 

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


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

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

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

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

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

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

Войти

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

Войти

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

    • От Otvet
      300.00 руб
      Скачать/Купить дополнение


      Sorts&Limits : Настраиваемая сортировка
       
       
      Модуль позволяет настраивать сортировку товаров в категориях/производителях/поиске/акциях, а так же добавляет новые варианты сортировки товаров.
      Так же имеется возможность управлять кол-вом товара на страницу и скрывать товары не в наличии
      Функции:
      настройка вывода пунктов сортировки в магазине выбор сортировки по умолчанию добавление сортировки по Новизне и Остатку возможность выводить сначала товары в наличии выбор вариантов сортировки по наличию (статус или нулевой остаток) возможность скрыть товары не в наличии настроить список чисел вывода кол-ва товара    
       
      Установка 2.3:
       
      Установка 2.0-2.1:
      Зайдите в Дополнения - Установка Выберите файл *.ocmod.zip (распаковывать не нужно) После установка перейдите в Дополнения - Модификации и обновите кеш Перейдите в Дополнения - Модули и активируйте модуль SORTS+ Выберите нужные настройки и Сохраните При возникновении проблем, установите это http://www.opencart.com/index.php?route=extension/extension/info&extension_id=18892 Установка 1.5:
      Распакуйте архив в корень сайта Очистите папку vqcache Перейдите в Дополнения - Модули и активируйте модуль SORTS+ Выберите нужные настройки и Сохраните Добавил Otvet Добавлено 04.10.2015 Категория Фильтры Системные требования Сайт разработчика Старая цена Метод активации Автоматическая активация Ioncube Loader Нет OpenCart 2.3
      2.2
      2.1
      2.0
      1.5.6.4
      1.5.6.3
      1.5.6.2
      1.5.6.1
      1.5.6
      1.5.5.1
      1.5.5
      1.5.4.1 ocStore 2.3
      2.2
      2.1
      1.5.5.1.2
      1.5.5.1.1
      1.5.5.1
      1.5.4.1.2
      1.5.4.1.1
      1.5.4.1
      1.5.3.1
      1.5.2.1
      1.5.1.3 OpenCart.Pro, ocShop Opencart.pro 2.3
      Opencart.pro 2.1
      OcShop 2.0.3.х
      OcShop 1.5.6.4.х  
    • От Otvet
      Модуль позволяет настраивать сортировку товаров в категориях/производителях/поиске/акциях, а так же добавляет новые варианты сортировки товаров.
      Так же имеется возможность управлять кол-вом товара на страницу и скрывать товары не в наличии
      Функции:
      настройка вывода пунктов сортировки в магазине выбор сортировки по умолчанию добавление сортировки по Новизне и Остатку возможность выводить сначала товары в наличии выбор вариантов сортировки по наличию (статус или нулевой остаток) возможность скрыть товары не в наличии настроить список чисел вывода кол-ва товара    
       
      Установка 2.3:
       
      Установка 2.0-2.1:
      Зайдите в Дополнения - Установка Выберите файл *.ocmod.zip (распаковывать не нужно) После установка перейдите в Дополнения - Модификации и обновите кеш Перейдите в Дополнения - Модули и активируйте модуль SORTS+ Выберите нужные настройки и Сохраните При возникновении проблем, установите это http://www.opencart.com/index.php?route=extension/extension/info&extension_id=18892 Установка 1.5:
      Распакуйте архив в корень сайта Очистите папку vqcache Перейдите в Дополнения - Модули и активируйте модуль SORTS+ Выберите нужные настройки и Сохраните
    • От Landistore
      1 400.00 руб
      Скачать/Купить дополнение


      eMarket - адаптивный и универсальный шаблон
      eMarket - универсальный шаблон который был построен на базе стандартной темы Opencart. Аккуратность, минимализм и удобство использования - это то, что выделяет этот шаблон среди сотни других
       
      Демонстрация
      Магазин: Смотреть демо магазина
      Админка: Смотреть демо админки, доступ: demo / demo
       
      Совместимость
      Opencart 2.3 / OcStore 2.3
       
      Основой для данного шаблона послужила стандартная тема default и большое желание сделать хорошую основу для быстрого и успешного старта вашего интернет-магазина. 

      Что вы получаете вместе с шаблоном
      Архив с актуальной версией шаблона и файлами дополнительных модулей.  Бесплатные обновления, которые формируются на основе ваших отзывов и предложений по улучшению  Подробную документацию по установке и настройке шаблона в которой разберется практически каждый человек. Набор баннеров для магазина одежды Стили для модуля ocFilter 4.7.5
      Особенности шаблона:
      Простая установка Адаптивная вёрстка Поддержка мультиязычности Три вида отображения товаров: список, список цен, сетка Добавлен вывод СЕО текста Наличие HTML баннеров (не картинка) Стильные иконки от Stroke icons 7 Современные шрифты Установлена последняя версия Owl Carousel Заменен Magnific Popup на LightBox Удобное меню в мобильной версии (сайдбар) Реализовано дополнительное меню в моб. версии для быстрого доступа к корзине, товарам в сравнении, закладках Модуль “Стена категорий” Модуль “Хиты продаж (Вертикальные)” Модуль “Последние (Вертикальные)” Модуль “Рекомендуем (Вертикальные)” Реализован блок со способами оплаты (редактируется через footer.tpl) Реализован блок "Сервис" (редактируется через footer.tpl) Реализована смена изображений товара при наведении Реализован вывод изображений дочерних категорий реализован вывод ссылки "Товары в сравнении" в шапке Добавлен вывод процента скидки товара Реализован вывод номера телефона в шапке и подвале Реализован вывод email в шапке и подвале Реализован вывод времени работы магазина Добавлены ссылки на социальные сети в подвале (менять через код) Добавлено окно “cookies” Добавлены кнопки “Плюс/Минус” на странице товара Добавлена кнопка “Вверх” Пересобрана страница с производителями Пересобран личный кабинет покупателя Оптимизированный и структурированный код Поддержка разных браузеров (Chrome, Firefox, Safari, Opera, Edge) Набор красивых и живых баннеров  
      Дополнительные услуги: 
      Установка и настройка шаблона - 400руб. Настройка хостинга и домена для вашего магазина - 400руб. Внедрение микроразметки (без модуля, вручную) - 1000руб. Оптимизация загрузки сайта - 700руб. Установка различных счетчиков и скриптов (Google Analytics, Yandex Metrika, JivoSite и т.д.) - 400руб.  
      В шаблоне присутствует модуль фильтра товаров “OCFilter”. Он не входит в стоимость шаблона. Купить можно тут 
       
       
      ВАЖНО!
      Шаблон изменяет стандартный common.js. Но это не значит, что у вас возникнут проблемы с установкой сторонних модулей. Все модули устанавливаются и работают 
       
       
      Лицензия:
      Шаблон можно использовать только на одном, основном домене (тестовые без ограничений). Любая перепродажа, выкладывание в публичный доступ и прочие действия подобного характера запрещены и являются нарушением авторских прав.
      Добавил Landistore Добавлено 06.01.2019 Категория Платные шаблоны Системные требования Сайт разработчика Старая цена Метод активации Без активации Ioncube Loader Нет OpenCart 2.3 ocStore 2.3 OpenCart.Pro, ocShop  
    • От Landistore
      1 400.00 руб
      Скачать/Купить дополнение


      NetStore - адаптивный шаблон интернет магазина электроники
      NetStore - яркий Opencart шаблон для магазина электроники. Продуманная структура и яркое цветовое решение позволяют использовать данный шаблон в различных тематиках
       
      Демонстрация
      Магазин: Смотреть демо магазина
      Админка: Смотреть демо админки, доступ: demo / demo
       
      Совместимость
      Opencart 2.3 / OcStore 2.3
       
      Основой для данного шаблона послужила стандартная тема default и большое желание сделать хорошую основу для быстрого и успешного старта вашего интернет-магазина. 

      Что вы получаете вместе с шаблоном
      Архив с актуальной версией шаблона и файлами дополнительных модулей.  Бесплатные обновления, которые формируются на основе ваших отзывов и предложений по улучшению  Подробную документацию по установке и настройке шаблона в которой разберется практически каждый человек. Набор баннеров для магазина одежды Стили для модуля ocFilter 4.7.5
      Особенности шаблона:
      Простая установка Адаптивная вёрстка Поддержка мультиязычности Три вида отображения товаров: список, список цен, сетка Добавлен вывод СЕО текста Наличие HTML баннеров (не картинка) Добавлено несколько вариаций "Сервиса" Стильные иконки от Stroke icons 7 Современные шрифты Установлена последняя версия Owl Carousel Заменен Magnific Popup на LightBox Удобное меню в мобильной версии (сайдбар) Реализовано дополнительное меню в моб. версии для быстрого доступа к корзине, товарам в сравнении, закладках Модуль “Стена категорий” Модуль “Хиты продаж (Вертикальные)” Модуль “Последние (Вертикальные)” Модуль “Рекомендуем (Вертикальные)” Реализован блок со способами оплаты (редактируется через footer.tpl) Реализована смена изображений товара при наведении Реализован вывод изображений дочерних категорий реализован вывод ссылки "Товары в сравнении" в шапке Добавлен вывод процента скидки товара Реализован вывод номера телефона в шапке и подвале Реализован вывод email в шапке и подвале Реализован вывод времени работы магазина Добавлены ссылки на социальные сети в подвале (менять через код) Добавлено окно “cookies” Добавлены кнопки “Плюс/Минус” на странице товара Добавлена кнопка “Вверх” Пересобрана страница с производителями Пересобран личный кабинет покупателя Оптимизированный и структурированный код Поддержка разных браузеров (Chrome, Firefox, Safari, Opera, Edge) Набор красивых и живых баннеров  
      Дополнительные услуги: 
      Установка и настройка шаблона - 400руб. Настройка хостинга и домена для вашего магазина - 400руб. Внедрение микроразметки (без модуля, вручную) - 1000руб. Оптимизация загрузки сайта - 700руб. Установка различных счетчиков и скриптов (Google Analytics, Yandex Metrika, JivoSite и т.д.) - 400руб.  
      В шаблоне присутствует модуль фильтра товаров “OCFilter”. Он не входит в стоимость шаблона. Купить можно тут 
       
       
      ВАЖНО!
      Шаблон изменяет стандартный common.js. Но это не значит, что у вас возникнут проблемы с установкой сторонних модулей. Все модули устанавливаются и работают 
       
       
      Лицензия:
      Шаблон можно использовать только на одном, основном домене (тестовые без ограничений). Любая перепродажа, выкладывание в публичный доступ и прочие действия подобного характера запрещены и являются нарушением авторских прав.
      Добавил Landistore Добавлено 06.01.2019 Категория Платные шаблоны Системные требования Сайт разработчика Старая цена Метод активации Без активации Ioncube Loader Нет OpenCart 2.3 ocStore 2.3 OpenCart.Pro, ocShop  
    • От novi4ok1
      Приветствую.
      Есть магазин на Opencart 2.3, работает на VPS, для контроля версий и внесения изменений используется Git. Сделано очень много правок и изменений, код очень отличается от коробки.
      Программист эмигрировал, ищу нового, который мог бы оперативно решать возникшие задачи и проблемы.
      Оплата за конкретные задания или почасовая.
      На данном этапе актуальны таски из вложения.
      Ссылка на сайт в заданиях, связь через личку.
      Заранее благодарен за отклик.
      Добавить скролл в категориях.doc
      Наложенный платеж при определенной сумме.doc
      Исправить стоимость доставки при доставке Укрпочтой.doc
      видео в карточке товара.doc
  • Последние посетители   0 пользователей онлайн

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

×

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

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