Перейти к содержанию
ILexus

Цены c количеством знаков после запятой.

Рекомендуемые сообщения

В своем интернет магазине давно отказался от цен с цифрами после запятой, только целые числа. Так удобнее рассчитываться с клиентами и выглядит лучше. Установил "Количество знаков после запятой - 0"

Но у меня есть товарные предложения которые стоят меньше 1 рубля за 1 шт. Если прописать цену товара в админке меньше 1 рубля, допустим 0,7 руб. То цены округляются в большую сторону и отображаются как 1 руб. Так то все работает правильно по логике магазина, но необходим небольшой допил.

Есть идея продавать мелкий товар за 1 руб, но при покупке от 10 и более, сделать цену например 0,7 руб. Положил в корзину 10 шт, цена будет 0,7х10 = 7 руб. Целое число в корзине, то что надо. Однако правило 0 знаков после запятой действует на весь магазин и цена "при покупке 10 и более" отображается вот так:

pic.jpg.593c62242291934fc65806d5d107fc12.jpg

Как сделать отображение цены товара при покупке от 10 и более с цифрой после запятой? Не трогая правило "Количество знаков после запятой - 0" которое действует на весь магазин.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Несколько путей, или (int) в запросе или саму БД подправить..

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

количество знаков верните обратно и пробуйте так

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Только что, AlexDW сказал:

количество знаков верните обратно и пробуйте так

Спасибо! Отличное решение.

 

Установил в настройках "Количество знаков после запятой - 1"

 

В файле /system/library/cart/currency.php

 

Найти:

$string .= number_format($amount, (int)$decimal_place, $this->language->get('decimal_point'), $this->language->get('thousand_point'));

Добавить после:

// decimal hack
$zero = str_repeat('.0', (int)$decimal_place);
$string = str_replace($zero, '', $string);
// decimal hack

Проблема решена!

pic2.jpg.c6605937dc2afed9c4153ffe8c87fad5.jpg

Изменено пользователем ILexus

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти

  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу

×

Важная информация

На нашем сайте используются файлы cookie и происходит обработка некоторых персональных данных пользователей, чтобы улучшить пользовательский интерфейс. Чтобы узнать для чего и какие персональные данные мы обрабатываем перейдите по ссылке. Если Вы нажмете «Я даю согласие», это означает, что Вы понимаете и принимаете все условия, указанные в этом Уведомлении о Конфиденциальности.