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

Кратность товара


Halonest

Recommended Posts

версия OpenCart 3.0.2.0

 

Избитая тема на форуме, но рабочего решения не встретил:

Имеются товары, которые продаются только кратно коробке, например 12 шт./кор.

Необходимо реализовать возможность добавления в корзину и оформления заказа на такие товары только кратно упаковке: 12, 24, 36, 48 и т.д.

 

Реализацию предполагаю с использованием минимального количества товара (встроенная функция), т.е., например, в админке добавить во вкладке "Данные" по товару рядом с минимальным кол-вом пунктик "Кратность минимальному количеству" Да/Нет.

Соответственно при установленном флажке "Да" выводить в карточке товара вместо "Минимальное количество для заказа: 12" фразу "Количество кратное упаковке: 12" и запрещать покупку, если установленное количество не кратно 12 (выводить предупреждение о том, что "Покупка товара <Название товара> возможна только кратно упаковке: 12 единиц".

 

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

 

В идеале, конечно, было бы хорошо для товаров, по которым установлена обязательная кратность сделать поле количества редактируемым только кнопками "+" / "-" сразу кратно заданному количеству.

Как можно такое реализовать?

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


можно сразу создавать карточку товара не в виде 1шт, а в виде коробки с соответствующей ценой за коробку

 

либо использовать обязательные опции с вариантами нужных фасовок

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

47 минут назад, AlexDW сказал:

либо использовать обязательные опции с вариантами нужных фасовок

речь немного о другом - он хочет, чтобы при нажатии в карточке и в корзине на +-, изменить можно было только кратно заданному шагу.

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

если фасовка задана через опции - так и будет

просто будет считать не количество штук (12, 24 и тд), а сразу коробками (1х12, 2х12, ...)

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

3 минуты назад, AlexDW сказал:

если фасовка задана через опции - так и будет

просто будет считать не количество штук (12, 24 и тд), а сразу коробками (1х12, 2х12, ...)

кстати, или так )) я даже что-то не подумал. писал скрипты-допилы.

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

11 часов назад, AlexDW сказал:

если фасовка задана через опции - так и будет

просто будет считать не количество штук (12, 24 и тд), а сразу коробками (1х12, 2х12, ...)

Если я Вас правильно понял, то выглядеть это будет примерно следующим образом:
Есть товар с ценой 100. Под него создается опция: Ящик 12 шт. (цена + 1100) и при выборе 1 шт. товара с этой опцией в корзину попадает 1 шт. товара за 1200.
Механизм вполне рабочий, хоть и не элегантный... спасибо.
 

12 часов назад, anboza сказал:

под 2.3 есть решение, под 3.0 адаптации нет. если адаптируете, скину

Спасибо, адаптировать едва ли смогу - поэтому ищу готовое решение в виде кода или расширения...

Вчера раскопал бесплатное расширение с офф. маркета OpenStore, которое, судя по описанию и скриншотам на странице расширения, делает то, что нужно:
Suppose you have a product with minimum quantity as 3. Then this extension will only allow quantity to be added in steps of 3. Like 3,6,9,12,15 etc.

Хотя +/- там не работает, а реализовано все через запрет на добавление в корзину или изменения в самой корзине с выдачей уведомлений о некратности товара.

Заявлена поддержка версии 3.0.2.0, но увы даже на чистой версии 3.0.2.0 не заработало. Уже написал автору.

 

Странно, что в OpenCart нет такого, казалось бы, весьма востребованного механизма, как продажа кратно упаковке.

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


45 минут назад, Halonest сказал:

запрет на добавление в корзину

там с корзиной, самая сложность и есть. 

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

для карточки товара, там скрипт в 5 строк.

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

19 минут назад, anboza сказал:

там с корзиной, самая сложность и есть. 

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

для карточки товара, там скрипт в 5 строк.

 

Если есть кнопки +- то можно при минимальном количестве больше 1 блокировать инпут а на кнопки повесить добавление переменной "минимальное количество"

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

25 минут назад, Pavel666 сказал:

добавление переменной "минимальное количество"

да, только у разных товаров, может быть разное "минимальное".

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

 

59 минут назад, anboza сказал:

там с корзиной, самая сложность и есть. 

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

для карточки товара, там скрипт в 5 строк.

В упомянутом мною Выше бесплатном расширении этот механизм реализован. Я пытался разобраться, как это сделать, но моих знаний по теме явно недостаточно.
Правила форума запрещают любое распространение платных и лицензионных модулей, но по поводу бесплатных ограничений не накладывается. Если я опубликую ссылку на бесплатное (!) расширение из маркета opencart, чтобы люди, которые разбираются в коде могли по аналогии создать нечто подобное для версии 3.0.2 - это не будет расцениваться как нарушение правил форума?

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


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

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

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

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

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

Вхід

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

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

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

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

Important Information

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