Добавить товар только один раз.

Ребят, подскажите, как реализовать, чтобы товар можно было добавить ток один раз? Максимальное число товара 1. Чтобы нельзя было купить 2шт.
Александр
30 апреля 2017, 18:53
modx.pro
2
2 300
0

Комментарии: 7

Евгений Webinmd
30 апреля 2017, 23:23
0
тут где-то есть решения для изменения стилей после добавления заказа в корзину (поищите по блогам), можно просто прятать кнопку по такому же принципу, либо заменять ей на картинку, либо делать не активной и т.д.
Вот ссылка на пример
Николай Каленников
01 мая 2017, 05:06
1
0
Или вот так можно — плагин на событие перед добавлением в корзину msOnBeforeAddToCart
//перед добавлением в Корзину
if ($modx->event->name != 'msOnBeforeAddToCart') {
    return;
}
if ($product->get('id') != "id товара") {
   return;  
}
$tmp = $cart->get();
foreach ($tmp as $tm)  {
	 if ($tm['id'] == "id товара") {   
          $modx->event->output('...........Сообщение об ошибке...........'); //прерывает добавление   
           return;
       }
}
И в корзине блокируем изменение элемента с количеством товара — в чанке tpl.msCart 43 строка
<input type="number" name="count" value="{$product.count}"
class="input-sm form-control" {$product.id == 'id товара' ? 'readonly' :''}/>
Чанк лучше переподключить свой, чтобы при обновлении изменения не затерлись.
Семён Кудрявцев
01 мая 2017, 06:20
3
+4
У miniShop2 есть системная настройка — ms2_cart_max_count (точнее её по-умолчанию нет, но логика её работы предусмотрена) — так вот она делает всё, что Вам нужно. Просто создайте её и укажите значение 1, после этого добавить в корзину можно будет только один товар.
    Александр
    01 мая 2017, 09:54
    0
    Хорошо, гляну
      Ksu
      Ksu
      10 августа 2017, 08:13
      0
      Эта настройка запрещает добавление больше определенного количества только одного товара. То есть если поставить ms2_cart_max_count=1, то можно добавить Товар1, Товар 2, Товар 3 и т.д. по одной единице. Как можно сделать, чтобы ограничить количество разного товара в корзине? Мне требуется ограничить любой товар в корзине единицей.
      Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
      7