@shad0wcat
Начинающий верстальщик

Как вывести"Вы экономите" в Opencart2?

Добрый день, как сделать что-бы в карточке товара/категории при цене со скидкой выводился текст "Вы экономите x рублей"?
ea1d8-clip-15kb.png?nocache=1
  • Вопрос задан
  • 497 просмотров
Решения вопроса 1
dim565
@dim565
Здравствуйте! Работает при установке для товара цены акции (не скидки), думаю это более логично.
На странице товара
/catalog/controller/product/product.php
Найти:
$data['special'] = $this->currency->format($this->tax->calculate($product_info['special'], $product_info['tax_class_id'], $this->config->get('config_tax')), $this->session->data['currency']);
Добавить после:
$data['discount_amount'] = $this->currency->format($this->tax->calculate(($product_info['price'] - $product_info['special']), $product_info['tax_class_id'], $this->config->get('config_tax')), $this->session->data['currency']);

/catalog/view/theme/default/template/product/product.tpl
Найти:
<li>
<h2><?php echo $special; ?></h2>
</li>
Добавить после:
<li class="discount_amount">
<?php echo 'Вы экономите '.$discount_amount; ?>
</li>

На странице категории
/catalog/controller/product/category.php
Найти:
$special = $this->currency->format($this->tax->calculate($result['special'], $result['tax_class_id'], $this->config->get('config_tax')), $this->session->data['currency']);
Добавить после:
$discount_amount = $this->currency->format($this->tax->calculate(($result['price'] - $result['special']), $result['tax_class_id'], $this->config->get('config_tax')), $this->session->data['currency']);
Найти:
'price'       => $price,
'special'     => $special,
Добавить после:
'discount_amount' => $discount_amount,

/catalog/view/theme/default/template/product/category.tpl
Найти:
<span class="price-new"><?php echo $product['special']; ?></span> <span class="price-old"><?php echo $product['price']; ?></span>
Добавить после:
<span class="discount_amount"><?php echo 'Вы экономите '.$product['discount_amount']; ?></span>

Проверено на чистом OpenCart 2.3.0.2. По-хорошему, надо бы создать модификатор ocmod в формате xml, а не редактировать код напрямую, но это уже другой уровень.
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
@mat26
Здравствуйте!
Как сделать чтобы не появилась "Вы экономите" - если не указан ?
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы