Изменение цены показано в opencart 3.x - PullRequest
0 голосов
/ 09 апреля 2019

Я пытался обновить свой сайт с opencart 2.2 до версии 3.0.3.1 Для этого я создал копию своего сайта в «песочнице», где все модули и тема были переустановлены в версии 3.0.3.1.

Вся информация из базы данных была передана, и все, кажется, работает как задумано.

Моя единственная проблема связана с расширением комбинации опций, доступным для покупки в opencart, цены, похоже, не работают должным образом с модулями тем журнала 3.

Это означает, что все модули, включенные в тему журнала 3, показывают цену 0, когда продукт использует комбинацию параметров.

Я нашел все файлы контроллера для модулей внутри:

MySite / каталог / контроллер / journal3

и в каждом файле я нашел код, который контролирует отображаемую цену (см. Ниже)

в указанном коде я пытался изменить ($ result ['price'], на ($ result ['initial_from'],

~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~

if ($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')), $this->session->data['currency']);
            } else {
                $price = false;
            }

~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ *

это вызывает противоположную проблему: все продукты с комбинацией опций отображают правильную цену, а все те, которые не показывают 0.

текущий сайт настроен так:

показывает customer_group_price (вкладка скидки) и если вкладка скидки пуста, она показывает otp_customer_price (цена комбинации вариантов)

Я ужасно разбираюсь с кодом, и php, вероятно, мой злейший враг, поэтому, если у кого-то есть необходимость переписать этот код для правильной работы, я был бы очень признателен.

...