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

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


Recommended Posts

  • 6 years later...

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

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

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


  • 3 weeks later...

самое близкое к требуемому, это опция в админке 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;
				}

 

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

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

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


  В 10.04.2019 в 13:09, pavlovasmirnova80 сказав:

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

Expand  

 

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

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

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


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

 

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.xmlFetching info...

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

  • 1 year later...
  В 17.04.2019 в 07:13, PaulKravchenko сказав:

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

найти:

<?php if ($price) { ?>

заменить на:

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

 

Спасибо.

Сделал на 1.5.4

Добавил в контроллер и в шаблоны , рапрацувало

 

Убирать цену , если нет в наличии опенкарт 1.5.4

Продукт ТПЛ
вместо  <?php if ($price) { ?>

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

Категория ТПЛ и Поиск ТПЛ
вместо <?php if ($product['price']) { ?>

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

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


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

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

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

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

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

Вхід

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

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

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

Important Information

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