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

Проблема с выводом количества в раздел категории


Recommended Posts

Столкнулся с очень не приятной проблемой, пытаюсь вывести количество товара из карточки товара в категории OcStore 2.3

В контроллер добавил  код 
 

if ($product_info['quantity'] <= 0) {
				$data['stock'] = $product_info['stock_status'];
			} elseif ($this->config->get('config_stock_display')) {
				$data['stock'] = $product_info['quantity'];
			} else {
				$data['stock'] = $this->language->get('text_instock');
			}


'stock'       => $result['quantity'],
'stock_status'=> $result['stock_status'],
  
$data['text_stock'] = $this->language->get('text_stock');
  

в tlp вывел вот так 

<p class="stock<?php if(isset($quantity) && $quantity <= 0) { echo " minus"; } ?>"><i class="fa fa-circle" aria-hidden="true"></i> <?php echo $stock; ?></p>

но ругается что нет обьявленной переменной 

image.thumb.png.22571cbcc7a00b54693519c4148f066e.png

 

и впал в ступор туда ли я копаю

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


if ($product_info['quantity'] <= 0) {
				$data['stock'] = $product_info['stock_status'];
			} elseif ($this->config->get('config_stock_display')) {
				$data['stock'] = $product_info['quantity'];
			} else {
				$data['stock'] = $this->language->get('text_instock');
			}

Это зачем?

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

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

if ($product_info['quantity'] <= 0) {
				$data['stock'] = $product_info['stock_status'];
			} elseif ($this->config->get('config_stock_display')) {
				$data['stock'] = $product_info['quantity'];
			} else {
				$data['stock'] = $this->language->get('text_instock');
			}

Это зачем?

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

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


20 часов назад, Druser сказал:

Столкнулся с очень не приятной проблемой, пытаюсь вывести количество товара из карточки товара

Количество (1 шт, 5 шт, 100500шт итд)

 

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

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

Статус на складе "На заказ" ,"Готов к отправке" итд

 

Если вы спрашиваете, как проехать на улицу Строителей дом 25 , зачем при этом упоминать про цены на подсолнечное масло.

 

Если вы собирались вывести в каждом товаре к примеру " На складе : 35шт" На складе : 15шт"  итд , то здесь одно решение и его вы практически выполнили.

Если же нужно писать статусы "На заказ" и "Готов к отправке" (странный весьма статус) , то иная задача. Код который вы вставили он только для карточки товара и в категории работать не будет.

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

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

37 минут назад, Tom сказал:

Количество (1 шт, 5 шт, 100500шт итд)

 

Статус на складе "На заказ" ,"Готов к отправке" итд

 

Если вы спрашиваете, как проехать на улицу Строителей дом 25 , зачем при этом упоминать про цены на подсолнечное масло.

 

Если вы собирались вывести в каждом товаре к примеру " На складе : 35шт" На складе : 15шт"  итд , то здесь одно решение и его вы практически выполнили.

Если же нужно писать статусы "На заказ" и "Готов к отправке" (странный весьма статус) , то иная задача. Код который вы вставили он только для карточки товара и в категории работать не будет.

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

Да может быть, потому что немного запарился ( так как php и OcStor изучаю только 4 день)  , мне нужно в категории на товар  вывести статусы "На заказ" и "Готов к отправке" без числового значения по остатку ( вопрос стоит в том что продаю букеты на заказ, есть букеты которые делаются только на заказ, а есть уже готовые букеты которые можно сразу получить) 

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


Так попробуйте (предыдущие правки убрать).

https://opencartforum.com/topic/40777-resheno-otobrazhenie-statusa-o-nalichii-tovara-v-kategorii/?do=findComment&comment=339230

 

UPD : единственное отличие, то что в сообщении всё что  начинается как 

$this->data....

Нужно читать как

$data.....

 

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

12 минут назад, Tom сказал:

Так попробуйте (предыдущие правки убрать).

https://opencartforum.com/topic/40777-resheno-otobrazhenie-statusa-o-nalichii-tovara-v-kategorii/?do=findComment&comment=339230

 

UPD : единственное отличие, то что в сообщении всё что  начинается как 

$this->data....

Нужно читать как

$data.....

 

Понял, а вот получается мы просто выводим значения, а проверку количества в контролере можно пропустить ?

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


Опять вы про масло.

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

мне нужно в категории на товар  вывести статусы "На заказ" и "Готов к отправке" без числового значения по остатку

А где здесь про :

 

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

мы просто выводим значения, а проверку количества в контролере

То есть что то должно происходить если товара меньше нуля?

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

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

Опять вы про масло.

А где здесь про :

 

То есть что то должно происходить если товара меньше нуля?

да, до есть как я вот это вывел в карточке товара 

в product tlp 

<li class="stock<?php if(isset($quantity) && $quantity <= 0) { echo " minus"; } ?>"><i class="fa fa-circle" aria-hidden="true"></i> <?php echo $stock; ?></li>

в контроллер 

в переменную продукт инфо 

$data['text_stock'] = $this->language->get('text_stock');


if ($product_info['quantity'] <= 0) {
				$data['stock'] = $product_info['stock_status'];
			} elseif ($this->config->get('config_stock_display')) {
				$data['stock'] = $product_info['quantity'];
			} else {
				$data['stock'] = $this->language->get('text_instock');
			}

Вот такой вывод 

image.png.b8e84e1b55cc7efdcdf4fb69670052a8.pngimage.png.dbcb41c893439107c1c756b4fe4bd7f0.png

image.thumb.png.e29e146405d9d22981164d57f5a6eab6.png

 

 

 

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


<?php if ($product['quantity'] <= 0) { ?>

   Ваше значение

Если нет

   Показываем статус

<?php } ?>

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

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

<?php if ($product['quantity'] <= 0) { ?>

   Ваше значение

Если нет

   Показываем статус

<?php } ?>

принял а в контролер вот такое пихать ? 

'stock'       => $result['quantity'],
'stock_status'=> $result['stock_status'],

Или это я уже лишнее сделал?

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


Так вы пробуйте))) Не пациента же вскрывать первый раз будете. 

У меня где то валялся модификатор, который делал нечто похожее.

Если товар в количестве и более нуля 

   Отображается "В наличии: xxx штук.

Если товара менее нуля.   

     Выводим статус на складе.

 

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

16 минут назад, Tom сказал:

<?php if ($product['quantity'] <= 0) { ?>

   Ваше значение

Если нет

   Показываем статус

<?php } ?>

image.thumb.png.9607e02dc6bef6e6189aac8ac7bd8073.png код который использовал 
 

if ($product['quantity'] <= 0) { 

				$data['stock'] = $product['stock_status'];
				} 
					elseif ($this->config->get('config_stock_display')) {
						$data['stock'] = $product['quantity'];
				} 
				else {
					$data['stock'] = $this->language->get('text_instock');
				}

 

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


9 минут назад, Tom сказал:

Видимо так вы сделали условие вывода статуса.

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

 

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


В 09.02.2021 в 21:34, Tom сказал:

Видимо так вы сделали условие вывода статуса.

слушай я понял в чем соль, я пытаюсь вывести значения глобальной переменной product*info которая не обьявлена в category.php, я можно ли подключить его вот так 

class ControllerProductProduct extends Controller {
$product_info = $this->model_catalog_product->getProduct($product_id);
if ($product_info['quantity'] <= 0) {
                $data['stock'] = $product_info['stock_status'];
            } elseif ($this->config->get('config_stock_display')) {
                $data['stock'] = $product_info['quantity'];
            } else {
                $data['stock'] = $this->language->get('text_instock');
            }
 
 
Надіслати
Поділитися на інших сайтах


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

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

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

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

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

Вхід

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

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

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

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

Important Information

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