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

Количество товаров в корзине = 1


Recommended Posts

Как сделать чтобы количество товаров в корзине было равно 1,2,3 и т д. 

Пример: Человек добавил 50 штук товара в корзину, а в значке корзины чтобы показывало 1 товар, добавил еще какой нибудь товар с количеством 150, в корзине показывает 2 товара)

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


4 минуты назад, bobokhon1998 сказал:

Как сделать чтобы количество товаров в корзине было равно 1,2,3 и т д. 

Пример: Человек добавил 50 штук товара в корзину, а в значке корзины чтобы показывало 1 товар, добавил еще какой нибудь товар с количеством 150, в корзине показывает 2 товара)

опции

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


1 час назад, bobokhon1998 сказал:

Как сделать чтобы количество товаров в корзине было равно 1,2,3 и т д. 

Пример: Человек добавил 50 штук товара в корзину, а в значке корзины чтобы показывало 1 товар, добавил еще какой нибудь товар с количеством 150, в корзине показывает 2 товара)

system/library/cart/cart.php

countProducts()

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


16 часов назад, AUSS сказал:

system/library/cart/cart.php

countProducts()

Нашел строчку, т.к в php не силен, не очень понял что изменить или добавить

 

Забыл написать, версия ocStore 2.3.0.2.3

Змінено користувачем bobokhon1998
Надіслати
Поділитися на інших сайтах


21 минуту назад, bobokhon1998 сказал:

Нашел строчку, т.к в php не силен, не очень понял что изменить или добавить

 

Забыл написать, версия ocStore 2.3.0.2.3

тут идет подсчет корзины

дальше я помочь не могу - если есть готовые решения я готов поделиться, если нет - не готов кому то оказывать бесплатные услуги разработки (без обид)

в раздел услуг

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


5 часов назад, bobokhon1998 сказал:

Что опции ?

 

опциями решается данная задача без допилов кода. хотя возможно я не до конца понял что именно вы хотите заморочить- на зачем показывать в корзине вместо реального колва товара -1 или 2? какая логика должна быть в том что одного товара 50 штук- и это 1 товар. а другого 150 штук и это 1 товар ? :))

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


В 19.02.2020 в 17:44, AUSS сказал:

тут идет подсчет корзины

дальше я помочь не могу - если есть готовые решения я готов поделиться, если нет - не готов кому то оказывать бесплатные услуги разработки (без обид)

в раздел услуг

Интересный вы человек, какая обида ?))) Я уважаю и ценю чужой труд, напишу вам в личку )

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


В 19.02.2020 в 22:27, Dimasscus сказал:

опциями решается данная задача без допилов кода. хотя возможно я не до конца понял что именно вы хотите заморочить- на зачем показывать в корзине вместо реального колва товара -1 или 2? какая логика должна быть в том что одного товара 50 штук- и это 1 товар. а другого 150 штук и это 1 товар ? :))

Продажа цифровых товаров :)

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


2 минуты назад, bobokhon1998 сказал:

Продажа цифровых товаров :)

и? для этого и есть опции. зачем ломать корзину? есть ощущение что вы не совсем понимаете процесс

 

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


8 минут назад, Dimasscus сказал:

и? для этого и есть опции. зачем ломать корзину? есть ощущение что вы не совсем понимаете процесс

 

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

Змінено користувачем bobokhon1998
Надіслати
Поділитися на інших сайтах


3 часа назад, bobokhon1998 сказал:

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

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

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


17 часов назад, Dimasscus сказал:

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

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

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


8 минут назад, bobokhon1998 сказал:

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

в модуле указано "(вкл / выкл) Умножение цены на введённое количество товара"

что не так?

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


6 минут назад, Dimasscus сказал:

в модуле указано "(вкл / выкл) Умножение цены на введённое количество товара"

что не так?

Значит я смотрел другой модуль, иду искать) 

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


В 18.02.2020 в 18:54, bobokhon1998 сказал:

Как сделать чтобы количество товаров в корзине было равно 1,2,3 и т д. 

Пример: Человек добавил 50 штук товара в корзину, а в значке корзины чтобы показывало 1 товар, добавил еще какой нибудь товар с количеством 150, в корзине показывает 2 товара)

В файле catalog/controller/checkout/cart.php

Найти строку:

$json['total'] = sprintf($this->language->get('text_items'), $this->cart->countProducts() + (isset($this->session->data['vouchers']) ? count($this->session->data['vouchers']) : 0), $this->currency->format($total, $this->session->data['currency']));

И в ней это:

$this->cart->countProducts()

заменить на это:

count($this->cart->getProducts())

 

 

И в файле catalog/controller/checkout/cart.php тоже все вхождения

$this->cart->countProducts()

Заменить на 

count($this->cart->getProducts())

 

Сразу предупрежу:

1) Будут добавлены лишние переборы товаров из корзины getProducts(). Этого можно избежать, но решение уже не будет таким простым и описать его уже гораздо сложнее.

2) Если где-то есть кастомный функционал корзины, то он так же не заработает.

 

Вариант номер два:

В файле system/library/cart/cart.php

Находим функцию:

	public function countProducts() {
		$query = $this->db->query("SELECT SUM(quantity) as total FROM " . DB_PREFIX . "cart WHERE api_id = '" . (isset($this->session->data['api_id']) ? (int)$this->session->data['api_id'] : 0) . "' AND customer_id = '" . (int)$this->customer->getId() . "' AND session_id = '" . $this->db->escape($this->session->getId()) . "'");
		return $query->row['total'];
	}

И в ней это:

SUM(quantity) as total

Заменяем на это:

COUNT(*) as total

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

 

Тут уже выбирайте сами.

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

В 22.02.2020 в 22:29, mpn2005 сказал:

В файле catalog/controller/checkout/cart.php

Найти строку:


$json['total'] = sprintf($this->language->get('text_items'), $this->cart->countProducts() + (isset($this->session->data['vouchers']) ? count($this->session->data['vouchers']) : 0), $this->currency->format($total, $this->session->data['currency']));

И в ней это:


$this->cart->countProducts()

заменить на это:


count($this->cart->getProducts())

 

 

И в файле catalog/controller/checkout/cart.php тоже все вхождения


$this->cart->countProducts()

Заменить на 


count($this->cart->getProducts())

 

Сразу предупрежу:

1) Будут добавлены лишние переборы товаров из корзины getProducts(). Этого можно избежать, но решение уже не будет таким простым и описать его уже гораздо сложнее.

2) Если где-то есть кастомный функционал корзины, то он так же не заработает.

 

Вариант номер два:

В файле system/library/cart/cart.php

Находим функцию:


	public function countProducts() {
		$query = $this->db->query("SELECT SUM(quantity) as total FROM " . DB_PREFIX . "cart WHERE api_id = '" . (isset($this->session->data['api_id']) ? (int)$this->session->data['api_id'] : 0) . "' AND customer_id = '" . (int)$this->customer->getId() . "' AND session_id = '" . $this->db->escape($this->session->getId()) . "'");
		return $query->row['total'];
	}

И в ней это:


SUM(quantity) as total

Заменяем на это:


COUNT(*) as total

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

 

Тут уже выбирайте сами.

 

Понял, спасибо) лучше тогда с опциями да ?) Так будет безопаснее

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


В 22.02.2020 в 21:27, Dimasscus сказал:

в модуле указано "(вкл / выкл) Умножение цены на введённое количество товара"

что не так?

 

Установил модуль, есть вот это "Не умножать на количество"  мою проблему она не решает... Возможно вы меня не правильно поняли? Мне нужно чтобы когда человек добавляет товар в любом количестве, товаров в корзине показывало 1, добавил еще какой-то товар или этот же в корзину, показывает 2 товара в корзине, а не введенное человеком количество

 Или же, если я вас не правильно понял, тогда скажите, какой тип опций выбрать на опцию "количество"? чтобы человек вводил любое кол-во и там чтобы можно было настроить мин и макс кол-во

Змінено користувачем bobokhon1998
Надіслати
Поділитися на інших сайтах


Неужели никто не ответит? Посоветуйте хотя бы модуль опций, где пользователь сам вводит кол-во и цена обновляется, и чтобы можно было указывать минимальное и максимальное количество... 

Мне чтобы именно пользователь сам вводил количество

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


  • 3 years later...

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

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

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

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

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

Вхід

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

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

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

×
×
  • Створити...

Important Information

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