Перейти к содержанию
View in the app

A better way to browse. Learn more.

Русскоязычное сообщество Opencart

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

В связи с блокировкой банка QIWI оплата через сайт не возможна.
Для оплаты и получения дополнений просьба писать в личные сообщения 
Admin*у
или в Телеграмм https://t.me/pascha_opencart
После оплаты Вам так же будет доступно скачивание дополнений и обновлений на данном форуме

Как сделать добавление только 1 товара и не более

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

Опубликовано

 Нужно чтобы в корзину можно было добавить только 1 одинаковый товар. То есть чтобы было перчатки красные 1 шт, ботинки черные 1 шт. И не было возможности добавить перчатки красные 3 шт.

в файле \catalog\controller\checkout\cart.php

после строк

foreach ($product_options as $product_option) {
                if ($product_option['required'] && empty($option[$product_option['product_option_id']])) {
                    $json['error']['option'][$product_option['product_option_id']] = sprintf($this->language->get('error_required'), $product_option['name']);
                }
              
            }

вставить следующий код

$products = $this->cart->getProducts();
             $yes = 1;
                      
           foreach ($products as $product)
        {
            if ($product['product_id'] == $product_id) {   $yes = 0;

                foreach ($product_options as $product_option) {
                  
                    foreach ($product['option'] as $option_cart) {
                      
                       if($product_option['product_option_id'] == $option_cart['product_option_id']) {  
                        
                          if(!isset($option[$product_option['product_option_id']])) {
                        
                            $option[$product_option['product_option_id']] = "";
                          
                            }
                                    
                          if(!isset($option_cart['value'])) {
                        
                           $option_cart['value'] = "";
                          
                           }    
                          
                           if($option[$product_option['product_option_id']] != $option_cart['value']) $yes = 1;
                    
                             }
                          }  
                      }
                  }  
                }  
                  
            if($yes == 0)   $json['error']['recurring'] = $this->language->get('error_recurring_required');

Товар с одинаковым ID добавляет в корзину повторно только если у него отличается хотя бы одна опция. Если опции одинаковые товар повторно не добавляется.
 

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

функция 

public function add(

закоментировать строку

// $this->db->query("UPDATE " . DB_PREFIX . "cart SET quantity = (quantity + " . (int)$quantity . ") WHERE

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

Последние посетители 0

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

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.