Jump to content
Search In
  • More options...
Find results that contain...
Find results in...
  • Sign Up

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


Recommended Posts

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

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

 

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

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

 

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

Link to post
Share on other sites

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

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

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

 

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

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

Link to post
Share on other sites

В 05.03.2018 в 14:35, Mykhaylo сказал:

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

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

Link to post
Share on other sites

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

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

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

Link to post
Share on other sites

  • 5 weeks later...

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

У меня ocStore 2.3.0.2.3.

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

Link to post
Share on other sites

  • 1 year later...
  • 1 year later...

Человек хочет сам сделать, зачем подсовывать свой же продукт! Это ли не спам на форуме?

Link to post
Share on other sites

В 05.03.2018 в 13:35, Mykhaylo сказал:

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

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

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

 

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

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

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

Edited by niger
Link to post
Share on other sites

Или можете прям файлик в 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, если у вас шаблон, чтобы при обновлении шаблона ничего не сломалось.

Edited by niger
Link to post
Share on other sites

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

 

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

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

 

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

 

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

 

Edited by niger
Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...

Important Information

On our site, cookies are used and personal data is processed to improve the user interface. To find out what and what personal data we are processing, please go to the link. If you click "I agree," it means that you understand and accept all the conditions specified in this Privacy Notice.