разбирать номер как валюту в opencart php - PullRequest
1 голос
/ 29 декабря 2011

сначала, используя Opencart 1.5.1.3

с моим набором продуктов мне нужно было создать поле цены MAP (цены, рекламируемые производителями), а также поле регулярных цен. Некоторые производители разрешают мне отображать только минимальную цену, которую они устанавливают, даже если моя цена ниже, они должны добавить в корзину.

Для этой работы я использовал поле «местоположение» в базе данных и просто загрузил туда цену карты ...

с помощью $ product ['location'] (числовое значение) и выделения $ product ['price'] для отображения в качестве числового значения, а затем используйте серию операторов if, чтобы определить, какую цену показывать.

Я полагаю, что я проследил свою проблему до следующего: поскольку $ product ['location'] не является ценой, opencart не сообщает, чтобы обрабатывать обменный курс (при переключении валют) и, следовательно, мой $ product Значение ['location'] не меняется.

Я думаю, что это можно решить, отредактировав следующие строки в category.php, но я не уверен, что поставить ...

if (($this->config->get('config_customer_price') && $this->customer->isLogged()) || !$this->config->get('config_customer_price')) {
               $price = $this->currency->format($this->tax->calculate($result['price'], $result['tax_class_id'], $this->config->get('config_tax')));
            } else {
               $price = false;
            }

любая помощь будет оценена.

ссылка: https://arkmarine.ca/instruments/autopilots

1 Ответ

1 голос
/ 30 декабря 2011

Вам нужно будет установить значение как число с плавающей точкой, а затем передать его в метод $ this-> currency-> format.Вы можете установить тип с плавающей запятой, используя тип (float) перед значением

$this->currency->format( (float) $variable);
...