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

Убрать цену когда товара нет в наличии


Mykhaylo

Recommended Posts

Доброго времени.

Подскажите, как сделать так, чтобы цена на товар не отображалась, если товара нет в наличии?

 

И попутно вопрос, для чего в карточке товара существует пункт "Отстутствие на складе". В нём можно выбрать 4 пункта, среди которых есть пункт "Нет в наличии". Но даже если его выбрать, то ничего не происходит, товар отображается в магазине с ценой и со всем остальным. Пока пользуюсь одним решением, просто указываю количество товара равным нулю.

Ещё человек советовал настроить статусы товаров или как-то так, но я так и не нашёл где и как это делать...

 

Новый точечный рисунок.png

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


По первой ссылке я так и не понял, для какой версии предлагают делать изменения. Я боюсь что для моей не подойдёт.

По второй ссылке топик стартер за денюшку ушёл общаться в ЛС с "помогающим" человеком. Описанного рабочего решения нет.

По третьей ссылке не то, предлагают скрыть товары, которых нет в наличии, а мне нужно что бы скрывалась цена, а не сам товар.

 

P.S. у меня ocStore 2.3.0.2.3.

P.P.S. Может быть существует модуль, который скрывает цену отсутствующего товара? Править код не очень хотелось бы, если честно.

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


9 часов назад, PeterStudio сказал:

А зачем тогда писать в 3.х ветке форума???

Простите, по своей неосведомлённости я посмел предположить что ocStore версии 2.3.0.2.3 и есть текущая русифицированная версия OpenCart 3.0.2, а дополнительные цифры это их личный учёт.

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


  • 5 weeks later...

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

У меня ocStore 2.3.0.2.3.

Существует ли решение, а лучше готовый модуль, который бы скрывал цену на товар, которого нет в наличии?

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


  • 1 year later...
  • 1 year later...
В 05.03.2018 в 13:35, Mykhaylo сказал:

По первой ссылке я так и не понял, для какой версии предлагают делать изменения. Я боюсь что для моей не подойдёт.

По второй ссылке топик стартер за денюшку ушёл общаться в ЛС с "помогающим" человеком. Описанного рабочего решения нет.

По третьей ссылке не то, предлагают скрыть товары, которых нет в наличии, а мне нужно что бы скрывалась цена, а не сам товар.

 

P.S. у меня ocStore 2.3.0.2.3.

P.P.S. Может быть существует модуль, который скрывает цену отсутствующего товара? Править код не очень хотелось бы, если честно.

ну сделайте маленький окмодик себе, который во вьюхе проверяет, только если товара больше 0, выводим блок с ценой

Змінено користувачем niger
Надіслати
Поділитися на інших сайтах


Или можете прям файлик в catalog View product.tpl внести изменения

 

Вот это вот место вам нужно

<?php if ($product['price']) { ?>
              <p class="price">
                <?php if (!$product['special']) { ?>
                <?php echo $product['price']; ?>
                <?php } else { ?>
                <span class="price-new"><?php echo $product['special']; ?></span> <span class="price-old"><?php echo $product['price']; ?></span>
                <?php } ?>
                <?php if ($product['tax']) { ?>
                <span class="price-tax"><?php echo $text_tax; ?> <?php echo $product['tax']; ?></span>
                <?php } ?>
              </p>
<?php } ?>

Можете это  

<?php if ($product['price']) { ?>

заменить на 

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

 

Но так вы можете поломать работу каких-то модулей, которые цепляются к этой строчке.

А можете перед проверкой цены добавить проверку что количество товара больше 0. 

 

Ну и там же во вьюхах файлик category.tpl - нужно проделать тоже самое.

<?php if ($product['price']) { ?>
                <p class="price">
                  <?php if (!$product['special']) { ?>
                  <?php echo $product['price']; ?>
                  <?php } else { ?>
                  <span class="price-new"><?php echo $product['special']; ?></span> <span class="price-old"><?php echo $product['price']; ?></span>
                  <?php } ?>
                  <?php if ($product['tax']) { ?>
                  <span class="price-tax"><?php echo $text_tax; ?> <?php echo $product['tax']; ?></span>
                  <?php } ?>
                </p>
<?php } ?>

Я бы и там и там добавлял проверку перед ценой, чтобы не поломать модули, которые могут цепляться к этой строке и сделал ocmod, если у вас шаблон, чтобы при обновлении шаблона ничего не сломалось.

Змінено користувачем niger
Надіслати
Поділитися на інших сайтах


А потом вы узнаете, что есть еще search, featured, bestseller и куча других мест, где выдоится цена и там нужно будет проделать тоже самое. 

 

И в окмоде вроде можно будет сделать это проще, чем менять во всех файлах. 

<file path="catalog/view/template/(папка вашей темы)/product/{category,manufacturer,search,special,product}.tpl">

 

Пройтись по всем файлам. и вы перечисляете все нужные вам tpl, находите вот эту строчку, и перед ней вставляете вот это (Before). Ну и потом в конце блока AFTER position него вставить, что тут конец проверки.

 

Ну и инструкция как писать окмодики - 

 

Змінено користувачем niger
Надіслати
Поділитися на інших сайтах


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

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

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

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

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

Вхід

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

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

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

Important Information

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