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

Если цена товара 0.00 - выводим свой текст.


tim21701

Recommended Posts

Здравствуйте!

А как сделать вместо 0.00 цены ссылку на форму обратной связи?

Нет цены => узнать цену=> форма обратной связи.

Теперь все классно в товарах: если цена 0, то "скоро". НО!

В корзине вверху : Всего товаров: 0 (Скоро)  (вместо Всего товаров:0 (0р.))

Как то не очень... Изменение на $value == 1 привело лишь к тому, что в товарах опять появилась цена 0

:roll:

А как сделать так, чтобы данный метод не распространялся на корзину? У меня если в корзине нечего нет, показывает фразу вместе с нулём.

Присоединяюсь к авторам...

Подскажите, пожалуйста, можно ли всё это реализовать?

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


  • 1 month later...
  • 4 weeks later...
  • 6 months later...

Долго искал решение проблемы с корзиной, где то нашел и заработало, перед string надо писать такой код

if ($format && (float)$value == 0) {
    $trace = debug_backtrace();
    if (isset($trace[1]['class']) && $trace[1]['class'] != 'ControllerModuleCart') {
       return $this->language->get('text_zero');
    }
}
Змінено користувачем yurikbar
Надіслати
Поділитися на інших сайтах


  • 1 month later...

Отличное решение, огромное спасибо!!! По поводу покупки товара, которого нет в наличии, решил с помощью модуля "лист ожидания".

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


  • 1 month later...

Спасибо за решение! А можно как то реализовать, чтоб вот цен нигде не было, только текст "под заказ", но а 1 категории цены все таки показывались?

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


  • 1 month later...

Спасибо за решение! А можно как то реализовать, чтоб вот цен нигде не было, только текст "под заказ", но а 1 категории цены все таки показывались?

Это как? Чуток больше подробностей.

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

Это как? Чуток больше подробностей.

 

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

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


Было так: "0.00 руб.шт". Хочу, чтобы если цена "0", то писало "--"

 

Сделал 

if ($format && (int)$value == 1) {return $this->language->get('text_zero');
}

Но в выводе "-- руб.шт." не очень красиво. Как можно убрать выводит вот это "руб.шт"?

 

Спасибо.

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


  • 1 month later...

Добрый день, уважаемые. А на OC 2.1 есть какое-то решение? Пробовал решение из Этой темы но метод не подходит, так как конфликтует с чем-то. Заранее спасибо.

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


  • 3 weeks later...

 

Долго искал решение проблемы с корзиной, где то нашел и заработало, перед string надо писать такой код

if ($format && (float)$value == 0) {
    $trace = debug_backtrace();
    if (isset($trace[1]['class']) && $trace[1]['class'] != 'ControllerModuleCart') {
       return $this->language->get('text_zero');
    }
}

Спасибо за решение, одна проблемка: когда добавляется товар в корзинку, то в корзинке временно возникает сообщение 'Под заказ', но после обновления страницы цена становиться в "0"

И еще, что делать, если при оформлении заказа выбран способ доставки "Самовывоз" с нулевой стоимостью? В сроке доставки самовывоза выводит: "Под заказ" !

 

Ваше решение очень много затрагивает. Может лучше внести правки в контроллерах?

 

Например, для страницы продуктов в файле "catalog\controller\product\product.php" добавить строки (приблизительно начиная с 340)

           if ($product_info['price'] <= 0.00) {
            $this->data['stock'] = $product_info['stock_status'];
            $this->data['price'] = $this->language->get('text_zero');
         } elseif ($this->config->get('config_stock_display')) {
            $this->data['stock'] = $product_info['quantity'];
         } else {
            $this->data['stock'] = $this->language->get('text_instock');
            $this->data['price'] = $this->currency->format($this->tax->calculate($result['price'], $result['tax_class_id'], $this->config->get('config_tax')));
         }
       

Далее этот код подхватит переменную "text_zero" из языков.

Змінено користувачем DizeL
Надіслати
Поділитися на інших сайтах


  • 2 months later...

Никогда ничего не писал тут, но вдруг поможет. Заодно и ошибки может найдете)))

Выглядит вот так http://daimax.ru/index.php?route=product/product&path=59_67&product_id=17061

 

в файле /template/product/product.tpl ищите <?php echo $price; ?> первое вхождение меняете на <?php if ($price == 0) { echo "<a href='адрес страницы с обратной связью' target='_blank'>По запросу!</a>"; } else { echo $price; } ?>

 
Второе вхождение не трогать!
Не красиво конечно, но вроде работает и можно всплывающую форму обратной связи прикрутить.
Ну и привязки к версии как бы и нет и к движку тоже, главное правильную переменную отвечающую за вывод цены подсунуть)
Змінено користувачем AirDemon
Надіслати
Поділитися на інших сайтах


 

Никогда ничего не писал тут, но вдруг поможет. Заодно и ошибки может найдете)))

Выглядит вот так http://daimax.ru/index.php?route=product/product&path=59_67&product_id=17061

 

в файле /template/product/product.tpl ищите <?php echo $price; ?> первое вхождение меняете на <?php if ($price == 0) { echo "<a href='адрес страницы с обратной связью' target='_blank'>По запросу!</a>"; } else { echo $price; } ?>

 
Второе вхождение не трогать!
Не красиво конечно, но вроде работает и можно всплывающую форму обратной связи прикрутить.
Ну и привязки к версии как бы и нет и к движку тоже, главное правильную переменную отвечающую за вывод цены подсунуть)

 

 

$price == 0 true 

$price == $0 false

$price == 0 руб false

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

  • 2 months later...

Друзья, помогите, пожалуйста, разобраться! 

Когда прописываю

 

if ($format && (int)$value == 1) {

return $this->language->get('text_zero');
}
 
то цена и пишется как text_zero, но если меняю на 
 

if ($format && (int)$value == 1) {

return $this->language->get('Уточнить');
}
 
то в цене пишет ��������
 
 
 
Надіслати
Поділитися на інших сайтах


$this->language->get(' ');
 

это языковой файл, тут не должно быть "Уточнить"

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

  • 2 months later...

Друзья!

Такой момент:

У меня в магазине валюта по умолчанию - доллар. Но все цены пересчитываются по курсу, и на сайте отображаются в рублях. Когда я ставлю цену равную 1, то на сайте вместо сообщения "по запросу" появляется курс доллара к рублю. Если на сайте переключить валюту на доллары, то выводится соответственно "по запросу".  Подскажите, где копать?

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


подскажите сделал как описано в начале, при цене в 0 выводится под заказ, но в каталоге в шапке появляется вот такая ошибка Warning: Division by zero in /home/virtwww/w_pizzirina-ru_390ab3d8/http/catalog/controller/product/category.php on line 212

и это в каталоге где есть товар с нулевой ценой, как можно исправить ругается вот на эту строку

'percent' => round((($result['price'] - $result['special'])/$result['price'])*100, 0),

где нужно удалить?

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


  • 3 months later...
  • 2 weeks later...
В 08.01.2014 в 14:39, chukcha сказал:

$_['text_zero']             = '<span class="zakaz">Под заказ</span>';

 

в стилях

.price .zakaz {

font-size:9px

}

Решило проблему с размером шрифта в категориях товара, но в карточке шрифт остался огромным, как изменить его размер в карточке продукта?

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


В 07.10.2015 в 13:50, yurikbar сказал:

Долго искал решение проблемы с корзиной, где то нашел и заработало, перед string надо писать такой код


if ($format && (float)$value == 0) {
    $trace = debug_backtrace();
    if (isset($trace[1]['class']) && $trace[1]['class'] != 'ControllerModuleCart') {
       return $this->language->get('text_zero');
    }
}

Надпись из корзины убирает, но на тех страницах где есть фильтр стандартный и он размещен с правой стороны, он смещается ближе к центру, сужая область центральную, как поправить?

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


Ребята, может кто то подскажет как продать товар с нулевой стоимостью. У меня есть платные и бесплатные товары, оплата идет только через ЛикПей но даже если итоговая сумма равна нулю все равно перенаправляет на платежный шлюз для совершения оплаты, а мне нужно, что бы так не переходило (лишние шаги), а просто засчитывало оплату и ставило статус для заказа Комплит. Магазин с цифровыми товарами, по этому важно завершение заказа, только после этого клиент может скачать бесплатный товар

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


9 минут назад, Ing сказал:

Ребята, может кто то подскажет как продать товар с нулевой стоимостью. У меня есть платные и бесплатные товары, оплата идет только через ЛикПей но даже если итоговая сумма равна нулю все равно перенаправляет на платежный шлюз для совершения оплаты, а мне нужно, что бы так не переходило (лишние шаги), а просто засчитывало оплату и ставило статус для заказа Комплит. Магазин с цифровыми товарами, по этому важно завершение заказа, только после этого клиент может скачать бесплатный товар

Уже решил данную задачку) В настройках модуля ЛикПей есть поле "С какой суммы делать оплату активной" выставил 1 и так же подключил модуль из коробки free_checkout где в статусе заказа выставил Комплит. Таким образом при нулевой стоимости выводится модуль бесплатной оплаты, а если цена выше 1 появляется Ликпей)

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


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

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

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

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

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

Вхід

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

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

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

×
×
  • Створити...

Important Information

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