Вывести текст если цена больше определенной

Тема в разделе "OpenCart", создана пользователем Serkist, 21 май 2014.

  1. Serkist

    Serkist

    Регистрация:
    8 фев 2013
    Сообщения:
    350
    Симпатии:
    72
    Как вывести текст в категории "Бесплатная доставка" (под картинкой товара), если цена товара больше, чем 5 000 руб?
     
  2. 3AHO3A

    3AHO3A

    Регистрация:
    20 май 2014
    Сообщения:
    1
    Симпатии:
    6
    для карточки товара(product.tpl) можно сделать так, в любое удобное место помещаешь
    PHP:
    <?php if ($price 5000) echo 'Бесплатная доставка'?>
     
    NinoZombie нравится это.
  3. x-guest

    x-guest Команда форума

    Регистрация:
    8 окт 2012
    Сообщения:
    276
    Симпатии:
    977
    В этом примере привожу случай когда товаром до или равным 100 р. надо вывести ссылку на условия платной доставки и товаром свыше или равным 101 р. ссылку на условия бесплатной доставки которая открывается в новом окне.
    $product['price'] - переменная цены (аналогично как с $price)
    Код:
    <?php $product['price'];
        if($product['price'] <= 100) { ?>
    <!--Информация для товаров до 100 р. -->
    <div class="info-paid-service"><a onclick="window.open('http://site.ru')">Платная  доставка</a></div>
    <!--Информация для товаров свыше 101 р. -->
        <?php } elseif ($product['price'] >= 101) { ?>
    <div class="info-free-shipping"><a onclick="window.open('http://site.ru')">Бесплатная  доставка</a></div>
    <?php } ?>
    ну и конечно не забываем создать стили для клаcсов
    .info-paid-service {бла-бла css :coffee:}
    .info-free-shipping {...}
     
    Serkist нравится это.
  4. Serkist

    Serkist

    Регистрация:
    8 фев 2013
    Сообщения:
    350
    Симпатии:
    72
    данный метод не работает

    x-guest, а вот описанный вами - запустился на страницы категорий.
    а для карточки товара подходит?
    Я пробовал вставлять - ничего не вывелось.
     
    Последнее редактирование: 22 май 2014
  5. 3AHO3A

    3AHO3A

    Регистрация:
    20 май 2014
    Сообщения:
    1
    Симпатии:
    6
    как это не работает ?:Smile: все прекрастно работает , покажи код куда ты вставлял его ?
     
    Serkist нравится это.
  6. panasys

    panasys

    Регистрация:
    14 май 2013
    Сообщения:
    83
    Симпатии:
    32
    А у меня выводиться только платная доставка, со ссылкой как надо, при любой цене - ocSrore 1.5.5.1.2
     
  7. Serkist

    Serkist

    Регистрация:
    8 фев 2013
    Сообщения:
    350
    Симпатии:
    72
    да, все работает - это я не туда сначало код вставил.
     
  8. x-guest

    x-guest Команда форума

    Регистрация:
    8 окт 2012
    Сообщения:
    276
    Симпатии:
    977
    Я ж писал что
     
  9. panasys

    panasys

    Регистрация:
    14 май 2013
    Сообщения:
    83
    Симпатии:
    32
    Все равно не получилось,
    СДЕЛАЛ ТАК:

    Файл catalog/controller/product/product.php
    перед
    if((float)$product_info['special']){
    добавил
    if($product_info['price']>5000){
    $this->data['price_level']=true;}else{
    $this->data['price_level']=false;}

    Файл catalog/view/theme/***/template/product.tpl
    Добавил в соответствии с версткой
    <?php if($price_level){?>
    НЕОБХОДИМЫЕ ДЛЯ ВЫВОДА ДАННЫЕ
    <?php }?>
     
  10. x-guest

    x-guest Команда форума

    Регистрация:
    8 окт 2012
    Сообщения:
    276
    Симпатии:
    977
    причем здесь контроллер я написал пример проверки в самом файле шаблона (весь код вставляется в сам .tpl), зачем эта лишняя манипуляция с определением переменных есть же переменная цены к ней дописано что если она ровна или меньше данной переменной то выводить определенный текст осталось только вставить свою переменную цены, так как я для примера брал не стандартный шаблон ($product['price']) у вас может стоять что угодно начиная от ($product_info['price']) заканчивая ($price) смотреть надо ваш .tpl
     
  11. panasys

    panasys

    Регистрация:
    14 май 2013
    Сообщения:
    83
    Симпатии:
    32
    вот кусок из моего product.tpl пробовал свою переменную цены $price БЕЗРЕЗУЛЬТАТНО
    PHP:
    <div class="description">
            <?php if ($manufacturer) { ?>
            <span><?php echo $text_manufacturer?></span> <a href="<?php echo $manufacturers?>"><?php echo $manufacturer?></a><br />
            <?php ?>
            <span><?php echo $text_model?></span> <?php echo $model?><br />
            <?php if ($reward) { ?>
            <span><?php echo $text_reward?></span> <?php echo $reward?><br />
            <?php ?>
            <span><?php echo $text_stock?></span> <?php echo $stock?></div>
          <?php if ($price) { ?>
           <div class="price">
            <?php if (!$special) { ?>
            <?php echo $price?>
            <?php } else { ?>
            <span class="price-old"><?php echo $price?></span> <br /><span class="price-new"><?php echo $special?></span>
            <?php ?>
            <br />
            <?php if ($tax) { ?>
            <div class="price-tax"><?php echo $text_tax?> <?php echo $tax?></div>
            <?php ?>
            <?php if ($points) { ?>
            <span class="reward"><?php echo $text_points?> <?php echo $points?></span>
            <?php ?>
            <?php if ($discounts) { ?>
     
    Lasted edited by : 23 май 2014
  12. nikfakel

    nikfakel

    Регистрация:
    24 июл 2013
    Сообщения:
    150
    Симпатии:
    33
    В simple очень удобно все реализовано, можно ставить стоимость доставки в зависимости от цены.
     
  13. x-guest

    x-guest Команда форума

    Регистрация:
    8 окт 2012
    Сообщения:
    276
    Симпатии:
    977
    :mad: Действуем строго по инструкции - ни шагу в права или в лева и без инициативы....
    вот код (ниже) его надо вставить в catalog/view/theme/default/template/product/product.tpl согласно вашей верстки (короче не партись в любое место)
    Код:
    <?php $price;
        if($price <= 200) { ?>
    <!--Информация для товаров до 200 р. -->
    <div class="info-paid-service"><a onclick="window.open('http://site.ru')">Платная  доставка</a></div>
    <!--Информация для товаров свыше 201 р. -->
        <?php } elseif ($price >= 201) { ?>
    <div class="info-free-shipping"><a onclick="window.open('http://site.ru')">Бесплатная  доставка</a></div>
    <?php } ?>
    затем (2-й шаг.)
    в файл catalog/view/theme/default/stylesheet/stylesheet.css вставляем код (тоже в любое место)
    Код:
    .info-paid-service {
    background: #EEE;
    padding: 15px;
    width: 175px;
    box-shadow: 0 0 13px -2px #5d5d5d;
    border: 1px solid #CCC;
    margin: 5px 0;
    text-align: center;
    }
    .info-paid-service a {
    color: red!important;
    font-weight: bolder;
    font-size: 16px;
    }
    .info-free-shipping {
    background: #EEE;
    padding: 15px;
    width: 175px;
    box-shadow: 0 0 13px -2px #5d5d5d;
    border: 1px solid #CCC;
    margin: 5px 0;
    text-align: center;
    }
    .info-free-shipping a {
    color: green!important;
    font-weight: bolder;
    font-size: 16px;
    }
    
    Все радуемся !!!!!!!!!!!
    ------------------------------------------------------------------------

    Вот пример для panasys
    -пробуй вставь свой кусок кода на место+css в stylesheet.css
    Код:
    <div class="description">
    <?php $price;
        if($price <= 200) { ?>
    <!--Информация для товаров до 200 р. -->
    <div class="info-paid-service"><a onclick="window.open('http://site.ru')">Платная  доставка</a></div>
    <!--Информация для товаров свыше 201 р. -->
        <?php } elseif ($price >= 201) { ?>
    <div class="info-free-shipping"><a onclick="window.open('http://site.ru')">Бесплатная  доставка</a></div>
    <?php } ?>
            <?php if ($manufacturer) { ?>
            <span><?php echo $text_manufacturer; ?></span> <a href="<?php echo $manufacturers; ?>"><?php echo $manufacturer; ?></a><br />
            <?php } ?>
            <span><?php echo $text_model; ?></span> <?php echo $model; ?><br />
            <?php if ($reward) { ?>
            <span><?php echo $text_reward; ?></span> <?php echo $reward; ?><br />
            <?php } ?>
            <span><?php echo $text_stock; ?></span> <?php echo $stock; ?></div>
          <?php if ($price) { ?>
           <div class="price">
            <?php if (!$special) { ?>
            <?php echo $price; ?>
            <?php } else { ?>
            <span class="price-old"><?php echo $price; ?></span> <br /><span class="price-new"><?php echo $special; ?></span>
            <?php } ?>
            <br />
            <?php if ($tax) { ?>
            <div class="price-tax"><?php echo $text_tax; ?> <?php echo $tax; ?></div>
            <?php } ?>
            <?php if ($points) { ?>
            <span class="reward"><?php echo $text_points; ?> <?php echo $points; ?></span>
            <?php } ?>
            <?php if ($discounts) { ?>
    
    вот и css набросал:tongue:
    Код:
    .info-paid-service {
    background: #EEE;
    padding: 15px;
    width: 175px;
    box-shadow: 0 0 13px -2px #5d5d5d;
    border: 1px solid #CCC;
    margin: 5px 0;
    text-align: center;
    }
    .info-paid-service a {
    color: red!important;
    font-weight: bolder;
    font-size: 16px;
    }
    .info-free-shipping {
    background: #EEE;
    padding: 15px;
    width: 175px;
    box-shadow: 0 0 13px -2px #5d5d5d;
    border: 1px solid #CCC;
    margin: 5px 0;
    text-align: center;
    }
    .info-free-shipping a {
    color: green!important;
    font-weight: bolder;
    font-size: 16px;
    }
    
    Вот что должно получится
    [​IMG]
    [​IMG]
    только не надо говорить что не получается (сам лично проверял-не поленился установить дефолт на хостинг.) работает 10000000%
    P.S. Совсем забыл -ставим лайки не стесняемся:dance:
    --- Добавлено, 23 май 2014 ---
    причем тут SIMPLE - модуль бесподобный но здесь речь идет о том чтоб покупатель видел что товар доставляется бесплатно не доходя до корзины
     
    Последнее редактирование: 23 май 2014
    NinoZombie, panasys и nikfakel нравится это.
  14. nikfakel

    nikfakel

    Регистрация:
    24 июл 2013
    Сообщения:
    150
    Симпатии:
    33
    Я подумал, что речь про корзину, а не про продакт.тпл ) прошу простить ошибку ) а x-guest'у лайк
     
    x-guest нравится это.
  15. panasys

    panasys

    Регистрация:
    14 май 2013
    Сообщения:
    83
    Симпатии:
    32
    Теперь все работает спасибо x- guest
     
  16. x-guest

    x-guest Команда форума

    Регистрация:
    8 окт 2012
    Сообщения:
    276
    Симпатии:
    977
    всегда пожалуйста - аналогично делается для категорий только там своя переменная цены