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

[Решено] В корзине при нехватке товара писать доступное количество?


Recommended Posts

Как можно сделать, при оформлении заказа, в корзине, если количества товара не хватает (отмечен ***), рядом писать доступное количество этого товара?

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


  • 2 months later...

Сам сделал icon_e_surprised.gif , оказалось все просто:
1. в /catalog/controller/checkout/cart.php
после

$option_data[] = array(
вставить
'stock_qty' => $option['quantity'],
там же после
$this->data['products'][] = array(
вставить
'stock_qty' => $product['stock_qty'],
2. в /catalog/view/theme/ВАША_ТЕМА/template/checkout/cart.tpl
после
<?php foreach ($product['option'] as $option) { ?>
- <small><?php echo $option['name']; ?>: <?php echo $option['value']; ?></small><br />
<?php } ?>
вставить
<?php if (!$product['stock']) { ?>
<?php if ($product['option']) { ?>
<span class="stock">Доступно на складе: <?php echo $option['stock_qty']; ?> шт.</span>
<?php } else { ?>
<span class="stock">Доступно на складе: <?php echo $product['stock_qty']; ?> шт.</span>
<?php } ?>
<?php } ?>
3. в /system/library/cart.php
после
$this->data[$key] = array(
вставить
'stock_qty' => $product_query->row['quantity'],
Вот и все. icon_e_smile.gif Змінено користувачем DAN
  • +1 3
Надіслати
Поділитися на інших сайтах


  • 2 years later...

Большое Вам человеческое спасибо! :eek:  Проблему решило, хоть и немного не так как задумывал  :-) .  Еще небольшой вопрос, можно ли придать стиль span class="stock" через css? Или же данный класс еще где-то есть? Возможно и в php можно прописать стиль, тапками не кидайте, я только учусь )

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


 Еще небольшой вопрос, можно ли придать стиль span class="stock" через css? Или же данный класс еще где-то есть? Возможно и в php можно прописать стиль, тапками не кидайте, я только учусь )

Конечно можно через css. Я не помню уже. Посмотрите через отладчик и в файле стилей пропишите правило для .stock

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


Большое спасибо! Пока вписал во внутрь  <span class="stock" style="color: red"></span> , как дойдут руки, буду придавать вид .stock . 

 

Сам сделал icon_e_surprised.gif , оказалось все просто:
1. в /catalog/controller/checkout/cart.php
после

$option_data[] = array(
вставить
	  'stock_qty' => $option['quantity'];

 

Единственное в конце $option['quantity']; у меня стоит запятая (,) . Еще раз спасибо за решение проблемы )

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


Единственное в конце $option['quantity']; у меня стоит запятая (,) . Еще раз спасибо за решение проблемы )

Спасибо. Поправил, в запарке наверно ошибся.

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


  • 2 months later...
  • 2 years later...
34 минуты назад, kalyaba27 сказал:

Хороший метод, совместим з модулем Симплой проверено, кому надо подскажу

Кому надо поишит и найдет если вы сразу выложите этот метод сюда

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


Для симплы проверено работает на остор15512 симпла 4,8

1 в /catalog/controller/checkout/simplecheckout_cart.php
после

$option_data[] = array(

вставить

'stock_qty' => $option['quantity'],

там же после

$this->_templateData['products'][] = array(

вставить

'stock_qty' => $product['stock_qty'],

2 даже если тема не стандартная путь такой  /catalog/view/theme/default/template/checkout/simplecheckout_cart.tpl 
после

<?php foreach ($product['option'] as $option) { ?>
- <small><?php echo $option['name']; ?>: <?php echo $option['value']; ?></small><br />
<?php } ?>

вставить

<?php if (!$product['stock']) { ?>
<?php if ($product['option']) { ?>
<span class="stock">Доступно на складе: <?php echo $option['stock_qty']; ?> шт.</span>
<?php } else { ?>
<span class="stock">Доступно на складе: <?php echo $product['stock_qty']; ?> шт.</span>
<?php } ?>
<?php } ?>

3 в /system/library/cart.php
после

$this->data[$key] = array(

вставить

'stock_qty' => $product_query->row['quantity'],

Если нет желания пользоватся штатной корзиной, в настройках модуля есть обход ссылками напрямую в оформления заказа, тогда не нужно делать коретивы кода для штатной корзины, но лучше чтоб козина работала. и правки внести.

 

чтоб коректно работал подсчет нужно чтоб в товаров небыло опций, или в опциях нужно вычитание со склада

 

Не програмист, не судите строго) 

 

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


  • 8 months later...
  • 2 years later...

Спс за инуфу. Для OcStore 2.3 и Simlple

 

в: /system/library/cart/cart.php

после:

'stock' => $stock,

добавить:

'stock_qty' => $product_query->row['quantity'],

в : /catalog/controller/checkout/simplecheckout_cart.php

после:

'stock'     => $product['stock'] ? true : !(!$this->config->get('config_stock_checkout') || $this->config->get('config_stock_warning')),

добавить:

'stock_qty' => $product['stock_qty'],

в: /catalog/view/theme/ВАША_ТЕМА/template/checkout/simplecheckout_cart.tpl

после:

<small> - <?php echo $option['name']; ?>: <?php echo $option['value']; ?></small><br />
<?php } ?>

добавить:

<?php if (!$product['stock']) { ?>
<?php if ($product['option']) { ?>
<?php echo $stock_qty_err ?><?php echo $option['stock_qty']; ?>
<?php } else { ?>
<?php echo $stock_qty_err ?><?php echo $product['stock_qty']; ?>
<?php } ?>
<?php } ?>

в \catalog\language\ВАШ_ЯЗЫК\simplecheckout.php

добавить (аналогично и второй язык):

$_['stock_qty_err']  = 'в наличии:&nbsp;';

в catalog\controller\checkout\simplecheckout_cart.php

после:

$this->_templateData['text_cart'] = $this->language->get('text_cart');

добавить:

$this->_templateData['stock_qty_err'] = $this->language->get('stock_qty_err');

 

Обновляем модификаторы и пользуемся.

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


  • 9 months later...
В 23.04.2021 в 16:53, SanchoMDA сказав:

в: /catalog/view/theme/ВАША_ТЕМА/template/checkout/simplecheckout_cart.tpl


<?php if (!$product['stock']) { ?>
<?php if ($product['option']) { ?>
<?php echo $stock_qty_err ?><?php echo $option['stock_qty']; ?>
<?php } else { ?>
<?php echo $stock_qty_err ?><?php echo $product['stock_qty']; ?>
<?php } ?>
<?php } ?>

 

А как етот код переписать под twig для опенкарта версии 3?

Все остальное для версии 3 аналогично коду для 2.3

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


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

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

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

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

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

Вхід

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

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

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

Important Information

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