Перейти до вмісту
Пошук в
  • Детальніше...
Шукати результати, які ...
Шукати результати в ...

[Решено] Категории товара в корзине


Recommended Posts

Код не сделаю т.к. нет времени. Но.

1) Делаем выборку всех товаров

2) Циклом загоняем товары в массив предварительно делаа выборку категории.

Вот схематически:

 

$products_data = $this->выбор_товара(); //пример

foreach($products_data as $product){

  $category_name = $this->getProductCategory(); //пример

  $this->data['categories'][$category_name][] = array(

      все данные продукта 

  );

}

 

 

А потом в корзине циклом:

 

foreach($categories as $category_name=>$products){

  echo $category_name //имя категории

  foreach($products as $product){

    вывод продуктов категории

  }

}

 

 

в общем примерно так.

Надіслати
Поділитися на інших сайтах

  • 1 year later...
В 01.10.2015 в 01:39, rolfanya сказал:

Exploits спасибо за подсказку в нужном направлении, все получилось, теперь корзина выглядит так как нужно

 

  Показать контент

0591e-8ce7e4fc-0e7b-460e-8036-1155647d15

 

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

 

В 30.09.2015 в 12:34, rolfanya сказал:

Сделал сортировку по категориям в корзине 

Как привязать категории к корзине?

 

Как я понимаю нужно изменить запрос к БД в файле /system/library/cart.php добавив в него информацию о категориях?

$product_query = $this->db->query("SELECT * FROM " . DB_PREFIX . "product p LEFT JOIN " . DB_PREFIX . "product_description pd ON (p.product_id = pd.product_id) WHERE p.product_id = '" . (int)$product_id . "' AND pd.language_id = '" . (int)$this->config->get('config_language_id') . "' AND p.date_available <= NOW() AND p.status = '1'");

 

Вообще, у меня есть задумка сделать количественную скидку на товар из определенной категории.

То есть, чтобы скидка работала не от количества одного товара, как в стандарте Opencart, а от общего кол-ва товара из определенной категории.

 

Файл  xml и то что считает сейчас корзина

disc_Clover.xml

my_cart.jpg

Надіслати
Поділитися на інших сайтах


Смысл такой- когда кол-во любых крючков Clover достигает 5шт, то базовая цена меняется с 410руб. на 390руб. (скидка 5%)
Когда кол-во любых крючков Clover достигает 10шт, то цена меняется на 369руб. (скидка 10%)

Но правильное изменение цены происходит только у последнего товара из нужной категории в списке товаров корзины

Затык, я думаю в массиве или его отсутствии в районе штатного массива foreach ($products as $product) в файле  /catalog/controller/checkout/cart.php
Как-то надо сделать, чтобы корзина выводила пересчитанное значение $price для всех товаров из нужной категории

Надіслати
Поділитися на інших сайтах


Створіть аккаунт або увійдіть для коментування

Ви повинні бути користувачем, щоб залишити коментар

Створити обліковий запис

Зареєструйтеся для отримання облікового запису. Це просто!

Зареєструвати аккаунт

Вхід

Уже зареєстровані? Увійдіть тут.

Вхід зараз
  • Зараз на сторінці   0 користувачів

    • Ні користувачів, які переглядиють цю сторінку
×
×
  • Створити...

Important Information

На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність.