Jump to content
Fastex

Как скрыть цену, если товара нет в наличии

Recommended Posts

В каком файле нужно прописать условие ? и как именно это делается ?

Share this post


Link to post
Share on other sites

Поддерживаю вопрос как на ocstore 2.3 сделать При количестве товара = 0, скрыть цену товара ? 

По моему это же логично, по новому завозу будет новая цена. Это должно идти по дефолту в движке

Share this post


Link to post
Share on other sites

Присоединяюсь к вопросу

Share this post


Link to post
Share on other sites

в шаблоне учите php

Share this post


Link to post
Share on other sites

самое близкое к требуемому, это опция в админке Login Display Prices

обработка в коде выглядит так 

https://github.com/myopencart/ocStore/blob/ocStore2/upload/catalog/controller/product/category.php

				if ($this->customer->isLogged() || !$this->config->get('config_customer_price')) {
					$price = $this->currency->format($this->tax->calculate($result['price'], $result['tax_class_id'], $this->config->get('config_tax')), $this->session->data['currency']);
				} else {
					$price = false;
				}

 

Share this post


Link to post
Share on other sites

цену никто не скрывает, если товара нет, то и должно писать что товара нет в наличии, от того что показывает старую цену ну и ничего страшного

Share this post


Link to post
Share on other sites
15 часов назад, pavlovasmirnova80 сказал:

цену никто не скрывает, если товара нет, то и должно писать что товара нет в наличии, от того что показывает старую цену ну и ничего страшного

 

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

Кто поможет такое сделать? 

Share this post


Link to post
Share on other sites

Если кому-то все же нужно, то на примере дефолтного шаблона можно так:

 

1. catalog/controller/product/product.php

найти: 

$data['model'] = $product_info['model'];

добавить после:

$data['product_quantity'] = $product_info['quantity'];

найти массив $data['products'][] = array(

добавить перед:

$product_quantity = $result['quantity'];

 

найти:

'price'       => $price,

добавить после:

'product_quantity' => $product_quantity,

 

 

2. catalog/view/theme/default/template/product/product.tpl

вариант А - просто скрыть (будет в коде страницы, но не будет отображаться, скрываясь стилем)

найти:

          <?php if ($price) { ?>
          <ul class="list-unstyled">

заменить на:

          <?php if ($price) { ?>
          <ul class="list-unstyled" <?php if ($product_quantity <= '0') { ?>style="display: none;"<?php } ?>>

вариант B - не выводить (не будет выводиться вовсе, в коде страницы не фигурирует)

найти:

<?php if ($price) { ?>

заменить на:

<?php if ($price && $product_quantity > '0') { ?>

 

там же для связанных товаров (в примере вариант А, вариант B по аналогии с предыдущим

найти:

              <?php if ($product['price']) { ?>
              <p class="price">

заменить на:

              <?php if ($product['price']) { ?>
              <p class="price" <?php if ($product_quantity <= '0') { ?>style="display: none;"<?php } ?>>

 

Для тех, кого устраивает и шаблон таки дефолтный, в аттаче ocmod с вариантом B, только для страницы товара.

 

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

hide-price-if-zero_product-page.ocmod.xml

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
You are posting as a guest. If you have an account, please sign in.
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.


  • Recently Browsing   0 members

    No registered users viewing this page.

×

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.