[Помогите] Отобразить надпись в определенной карточке товара

Тема в разделе "OpenCart", создана пользователем cotto51rus, 19 сен 2017.

  1. cotto51rus

    cotto51rus

    Регистрация:
    3 янв 2016
    Сообщения:
    232
    Симпатии:
    8
    Opencart 1.5.6.4.
    Мне нужно сделать надпись не во всех, а в определенных товарах (не всей категории).
    Текст такой: Скидка 10% при заказе более 10 шт.
    Как это можно осуществить? Есть ли такой модуль или еще лучше всплывающее окно
    Использую модуль добавление трех произвольных строчек в атрибутах (как в скрине), но это не то, что мне нужно, т.к. во всех товарах эти строки использую под разный текст, поэтому мне задавать стиль для этой строчки не подходит, иначе данная строка во всех товарах будет выделена. Мне нужно именно для конкретного товара
    https://yadi.sk/i/MHFyDwBI3N3eT3
     
  2. spy

    spy

    Регистрация:
    15 янв 2013
    Сообщения:
    468
    Симпатии:
    137
    есть модуль, что добавляет таб с описанием к выбраным товарам.
    Создай таб и добавь нужные товары.
    Ну а стилизировать, чтобы было не в табе описания, а попапом - я думаю знаеш как)
     
    cotto51rus нравится это.
  3. Dotrox

    Dotrox Команда форума

    Регистрация:
    27 ноя 2012
    Сообщения:
    3.198
    Симпатии:
    1.306
    В ОК же из коробки есть скидка в зависимости от количества.
     
    cotto51rus нравится это.
  4. cotto51rus

    cotto51rus

    Регистрация:
    3 янв 2016
    Сообщения:
    232
    Симпатии:
    8
    стоит опенкарт стандартный, шаблон только не дефолтный, в купонах нет строки про количество, есть возможность выбора товара и категории, также можно указать сумму минимальную
    Скрин https://yadi.sk/i/dktS73Ix3N3maZ
    --- Добавлено, 19 сен 2017 ---
    Ну надо же, не знала, что так можно, нашла в карточке товара вкладку, получилось, преогромнейшее спасибо, осталось найти, как реализовать попапом текст про скидку
    --- Добавлено, 19 сен 2017 ---
    Нашла в Product.tpl такой код
    Код:
          <div class="price">
            <?php if (!$special) { ?>
            <?php echo $price; ?>
            <?php } else { ?>
            <span class="price-new"><?php echo $special; ?></span> <span class="price-old"><?php echo $price; ?></span>
            <?php } ?>
            <br />
            <?php if ($tax) { ?>
            <span class="price-tax"><?php echo $text_tax; ?> <?php echo $tax; ?></span><br />
            <?php } ?>
            <?php if ($points) { ?>
            <span class="reward"><small><?php echo $text_points; ?> <?php echo $points; ?></small></span>
            <?php } ?>
            <?php if ($discounts) { ?>
            <br />
            <div class="discount">
              <?php foreach ($discounts as $discount) { ?>
              <?php echo sprintf($text_discount, $discount['quantity'], $discount['price']); ?><br />
              <?php } ?>
            </div>
            <?php } ?>
          </div>
    Только не могу сообразить где я сделала ошибку.
    Прописала код в товаре так же как и модель, только заменила некоторые данные
    Код:
    <?php if ($manufacturer) { ?><span style="font-family:Calibri;font-size: 13px;"><?php echo $text_manufacturer; ?></span> <a href="<?php echo $manufacturers; ?>"><?php echo $manufacturer; ?></a><br /><?php } ?>
    Код:
    <?php if ($discounts) { ?><span style="font-family:Calibri; color: #AF2D2D; font-size: 13px;">СКИДКА:</span><a style="color: #AF2D2D; font-size: 12px;">&nbsp;<?php echo sprintf($text_discount, $discount['quantity'], $discount['price']); ?></a><br /><?php } ?>
    Но почему-то у меня не отображается количество и цена, хотя в языковом файле прописано так: $_['text_discount'] = 'при заказе от %s шт. цена: %s';
    Как это можно поправить, скрин прилагаю
    https://yadi.sk/i/SwpttAhP3N3zQG
     
  5. Dotrox

    Dotrox Команда форума

    Регистрация:
    27 ноя 2012
    Сообщения:
    3.198
    Симпатии:
    1.306
    Вот именно про это я и говорил, а не про купоны. Для каждого товара есть два варианта скидки: просто скидка, которая называется акцией и скидка от количества, коорая называется просто скидкой.

    Потому что надо выучить какой-нибудь язык программирования и тогда вы будете знать, что если из переменной $discounts содержимое достаётся через цикл, значит в этой переменной массив и без цикла ничего не получится.
    У вас же в коде уже есть всё необходимое:
    PHP:
    <div class="discount">
              <?php foreach ($discounts as $discount) { ?>
              <?php echo sprintf($text_discount$discount['quantity'], $discount['price']); ?><br />
              <?php ?>
            </div>
    Если хотите добавить сюда слово "скидка", то и добавляйте именно в этот код ничего больше в нём не трогая.

    И не используйте для скринов Яндекс.Диск, половина пользователей форума (и я в том числе) не увидит этих скринов из-за блокировки Яндекса в Украине.
     
  6. cotto51rus

    cotto51rus

    Регистрация:
    3 янв 2016
    Сообщения:
    232
    Симпатии:
    8
    Все понятно, большое спасибо