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

День добрый.

 

Задача простая. Вывести цену в двух валютах на странице категории.

 

Основная цена в долларах + дополнительно должна светиться цена в гривне.

 

В принципе вывода самой цены я добился. Но есть трабл. На странице 15 ед. товара. Скрипт пересчитывает самую нижнюю из всех и подставляет всем товарам.

 

Были добавлены/исправлены следующие строки:

 

Category.tpl

<?php if (!$product['special']) { ?>
<?php echo $product['price']; ?>
<span id="price_2"><?php echo $price_2; ?></span>
<?php } else { ?>
<span class="price-old"><?php echo $product['price']; ?></span> <span class="price-new"><?php echo $product['special']; ?></span> <span id="price_2"><?php echo $price_2_special; ?></span>
<?php } ?>

 

category.php

if (isset($this->request->get['product_id'])) {
$product_id = $this->request->get['product_id'];
} else {
$product_id = 0;
}
		
$category_info = $this->model_catalog_category->getCategory($category_id);		
$product_info = $this->model_catalog_product->getProduct($product_id);		
$this->data['product_info'] = $product_info;

.
.
.

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')));
$this->data['price_2'] = " ".round($this->currency->convert($result['price'], 'USD', 'UAH'), '2')." грн.";
} else {
$price = false;
}

if ((float)$result['special']) {
$special = $this->currency->format($this->tax->calculate($result['special'], $result['tax_class_id'], $this->config->get('config_tax')));
$this->data['price_2_special'] = " ".round($this->currency->convert($result['special'], 'USD', 'UAH'), '2')." грн.";
} else {
$special = false;
} 

 

Версия OC 1.5.1.3

 

Помогите плз разобраться где что не так?

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


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

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

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

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

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

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

Войти

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

Войти


  • Похожий контент

    • От Iliya1972
      Всем огромный привет.
      По совету старших товарищей - https://www.opencart.com/index.php?route=marketplace/extension/info&extension_id=23516
      предлагаю модификатор мультивалют для каждого товара для OCStore/ OpenCart 2.3. 
       
      Предлагается как есть, все правки внесены мной согласно замечаний на источнике. 
      БД в файле SQL без префикса OC_, кому надо - добавьте.
       
      Всем хорошего дня!
      install.ocmod.xml
      install.sql
    • От zcell

      450.00 руб
      Скачать/Купить дополнение


      Мультивалютный магазин с автоконвертацией по курсу ЦБ РФ и Yahoo
      Вы можете задать у одних товаров цену в долларах, у вторых в рублях, а у третьих в фиксированной валюте (например, доллар = 65 руб) и все будет автоматически конвертироваться на клиентской стороне.
       
      Что делает модуль:
      Добавляет возможность указывать цены для товаров в разных валютах.
      Работает с любыми валютами, в том числе можно задать фиксированный курс.
       
      Преимущества:
      - Простая установка;
      - Не грузит систему;
      - Работы с любыми валютами;
      - Любое количество валют;
      - Автоконвертация при переключении валют на фронте.
      - Можно создавать ФИКСИРОВАННЫЕ валюты, например если ваш вендор поставляет товары по фиксированному курсу.
       
      Установка:
      Для Opencart 1.5.x:
      - Залить файл в папку xml
      Для Opencart 2.1.x, 2.2.x, 2.3.x:
      - воспользваться стандратным установщиков дополнений
       
      - Выполнить запрос в базе данных, который создаст одно дополнительно поле (инструкция будет в конце xml файла)
      - Добавьте валюты (Система - Локализация - Валюты), если отсутствую необходимые валюты. Необходимо указать правильно код валюты - большими буквами, например RUB, USD, EUR
      - Выберите в каждом товаре, у которого валюта отлична от основной, нужную валюты (селектор находится справа от поля цены)
      - Если вам нужна фиксированная валюта (например 1 уе = 80 руб), то создаете новую валюту, пишите вымышленный код валюты, например FIX, FIC, FIE, чтобы система обновления не меняла курс автоматом, в поле значения курса пишите вычисленное в калькуляторе значение 1 / 80 = 0.0125 (обязательно точка в значении, не запятая), далее выбираете эту валюту в нужных товарах.
       
      Административная панель:
      - Цены товаров могут задавать в разных валютах (например указываете 10 USD в админке - на фронте будет цена по актуальному курсу доллара в рублях);
      - Валюты задаются как индивидуально для каждого товара, так и работает пакетное назначение, например в BatchEditor;
      - В заказах фиксируется сумма в рублях, по курсу соответствующему моменту оформления заказа (то есть цена товаров в заказе будет фиксирована).
       
      Фронт:
      - Все цены автоматически показываются в основной валюте сайта;
      - Работает конвертация цены Опций, Скидки за количество;
      - Работает конвертация в мини-корзине, корзине и оформлении заказа;
      - Также корректно работает переключение между валютами в интернет магазине с пересчетом по актуальным курсам.
       
      Обновление курса валют:
      - Происходит при открытии главной страницы административной панели;
      - Источником курса валют является ЦБ РФ и Yahoo (если не удалось получить данные у ЦБ РФ, получит у Yahoo).
       
      Валюты:
      1. стандартные валюты стран
      2. фиксированный курс доллара. Например, если поставщик зафиксировал курс на 75 руб.
      Можно будет завести валюту и указать ей нужный курс, при обновлении курс будет сохраняться.
      Интеграция:
      - с любыми шаблонами и модулями
      - Batch Editor - подхватит автоматом, нужно только в его настройках включить вывод поля
       
      Поддержка:
      В случае, если модуль не заработает в вашем магазине, могу оказать помощь по интеграции.
      Обязательно напишите адрес сайта, потребуется доступ по FTP и доступ в админку. Иначе практически нереально помощь.
      Взимается плата, если интеграция будет занимать более одного часа (например, если у вас сильно кастомизированный магазин или некорректно собранный магазин).
       
      Opencart 1.5.x:
      ДЕМО
      АДМИНКА
      demo
      demo
       
      Opencart 2.1.x, 2.2.x, 2.3.x:
      ДЕМО
      АДМИНКА
      demo
      demo
      Добавил zcell Добавлено 28.12.2015 Категория Цены, скидки, акции, подарки Системные требования Сайт разработчика https://true-studio.ru Старая цена 600 Метод активации Без активации Ioncube Loader Нет OpenCart ocStore OpenCart.Pro, ocShop  
    • От louise170

      1 350.00 руб
      Скачать/Купить дополнение


      Валюта плюс
      Модуль дает возможность указывать в товарах базовую цену в разных валютах - это бывает необходимо, если вы торгуете товарами иностранных производителей и соотв. ваши цены сильно зависят от колебания курсов валют. На вкладке Данные после поля "Цена" появляются два поля Базовая цена и Базовая валюта туда можно прописать цену в нужной вам валюте. Аналогично для опций, акций и скидок тоже добавляются поля для Базовой цены. Далее все цены из полей базовой цены переводятся по курсу в основную валюту магазина в стандартные поля цен.

      Возможности:
      Если в настройках модуля стоит автоматическое обновление валют, модуль сам при заходе в админку автоматически обновляет курсы валют раз в сутки с сайта выбранного вами (по умолчанию ЦБ РФ) и меняет все цены на товары, у которых базовая цена больше нуля. Можно не использовать автообновление, а задавать курсы руками и обновлять цены товаров по нажатию кнопки "Обновить цены товаров" на странице модуля. Настройка запуска обновления курсов и цен по крону. Для каждой из валют можно задать процент коррекции курса. Для разных производителей можно задать разные курсы валют. Любой валюте можно задать курс руками и поставить галочку, чтобы при обновлении этот курс не менялся. Базовую валюту в скобках на страницах сайта можно отображать или не отображать, для этого есть чекбоксы в настройках модуля, они появляются в настройках, если вы используете currency_plus_frontend.xml Все цены из базовых по курсу переводятся в стандартные поля для цен, поэтому далее с товарами могут работать любые другие модули в обычном режиме, например, фильтровать или сортировать товары по цене. Различные виды округления получающихся цен. Получение курсов валют возможно с одного из шести сайтов разных банков. Модуль Валюта плюс совместим с модулем Управление ценами.
      Модуль Валюта плюс совместим с модулем Option To Product.
      Версия модуля Валюта плюс для Опенкарт 1.5.x совместим с модулем Связанные опции.
      Также модуль может совместно работать с модулями экспорта-импорта товаров:
      Автоматическая обработка прайс-листов CSV Price Pro import/export (нужно на вкладке Макросы создать поля для базовой цены и валюты) Версия модуля Валюта плюс для Опенкарт 1.5.x совместима с модулем Batch Editor 0.2.3
      Никакие системные файлы не затираются, модуль работает на vqmod/ocmod.
       
      Модуль тестировался на:
      Opencart
      1.5.1.3 1.5.2.1 1.5.3.1 1.5.4.1 1.5.5.1.1 1.5.6 1.5.6.4 2.0.1.1 2.0.3.1 2.1.0.1 2.1.0.2 2.2.0.0 2.3.0.2 MaxyStore
      1.5.4.1 1.5.5.1 2.0.1.1
      Поддерживаемые языки:
      русский украинский английский
      Пример работы модуля:
      http://ocstore1541.opencartplus.ru/
      http://opencart2.opencartplus.ru/

      Демо админки:
      http://ocstore1541.opencartplus.ru/admin/
      http://opencart2.opencartplus.ru/admin/
      доступ
      demo / demo

      Лицензия
      При покупке данного модуля, Вы получаете право установки его на один домен. Лицензионный ключ можно получить по запросу на e-mail, который вы увидите на странице модуля, после его установки.

      Установка
      Инструкция по установке находится в файле readme.txt в архиве модуля.

      Требования к серверу
      На хостинге должен быть PHP 5.3 или выше. Также должен быть установлен ionCube Loader версии 5.0 или выше. Чтобы проверить его наличие скачайте этот файл, разархивируйте его содержимое и закачайте в корневую директорию Вашего сайта. После этого откройте в браузере http://ваш_сайт/test_ioncube.php Для корректной работе на Опенкарте 1.5.х на вашем сайте должен быть установлен VQMOD не ниже версии 2.4.1, если у вас стоит версия ниже - нужно обновиться отсюда: https://github.com/vqmod/vqmod/releases Если вы собираетесь получать курсы валют автоматически с выбранного сайта то необходимо, чтобы на вашем сервере был включен curl. FAQ
      FAQ по модулю "Валюта плюс" FAQ общие вопросы по Опенкарту  
       
      Добавил louise170 Добавлено 05.02.2014 Категория Прочее Системные требования PHP 5.3+, IonCube Loader версии 5.0+, CURL, для Опенкарта 1.5.х - VQMOD не ниже версии 2.4.1 Метод активации Автоматическая активация Ioncube Loader Требуется OpenCart 2.3
      2.2
      2.1
      2.0
      1.5.6.4
      1.5.6.3
      1.5.6.2
      1.5.6.1
      1.5.6
      1.5.4.1
      1.5.3.1 ocStore 2.3
      2.2
      2.1
      1.5.5.1.2
      1.5.5.1.1
      1.5.5.1
      1.5.4.1.2
      1.5.4.1.1
      1.5.4.1
      1.5.3.1
      1.5.2.1
      1.5.1.3 OpenCart.Pro, ocShop Opencart.pro 2.3
      Opencart.pro 2.1
      OcShop 2.0.3.х
      OcShop 1.5.6.4.х  
    • От louise170
      Модуль дает возможность указывать в товарах базовую цену в разных валютах - это бывает необходимо, если вы торгуете товарами иностранных производителей и соотв. ваши цены сильно зависят от колебания курсов валют. На вкладке Данные после поля "Цена" появляются два поля Базовая цена и Базовая валюта туда можно прописать цену в нужной вам валюте. Аналогично для опций, акций и скидок тоже добавляются поля для Базовой цены. Далее все цены из полей базовой цены переводятся по курсу в основную валюту магазина в стандартные поля цен.

      Возможности:
      Если в настройках модуля стоит автоматическое обновление валют, модуль сам при заходе в админку автоматически обновляет курсы валют раз в сутки с сайта выбранного вами (по умолчанию ЦБ РФ) и меняет все цены на товары, у которых базовая цена больше нуля. Можно не использовать автообновление, а задавать курсы руками и обновлять цены товаров по нажатию кнопки "Обновить цены товаров" на странице модуля. Настройка запуска обновления курсов и цен по крону. Для каждой из валют можно задать процент коррекции курса. Для разных производителей можно задать разные курсы валют. Любой валюте можно задать курс руками и поставить галочку, чтобы при обновлении этот курс не менялся. Базовую валюту в скобках на страницах сайта можно отображать или не отображать, для этого есть чекбоксы в настройках модуля, они появляются в настройках, если вы используете currency_plus_frontend.xml Все цены из базовых по курсу переводятся в стандартные поля для цен, поэтому далее с товарами могут работать любые другие модули в обычном режиме, например, фильтровать или сортировать товары по цене. Различные виды округления получающихся цен. Получение курсов валют возможно с одного из шести сайтов разных банков. Модуль Валюта плюс совместим с модулем Управление ценами.
      Модуль Валюта плюс совместим с модулем Option To Product.
      Версия модуля Валюта плюс для Опенкарт 1.5.x совместим с модулем Связанные опции.
      Также модуль может совместно работать с модулями экспорта-импорта товаров:
      Автоматическая обработка прайс-листов CSV Price Pro import/export (нужно на вкладке Макросы создать поля для базовой цены и валюты) Версия модуля Валюта плюс для Опенкарт 1.5.x совместима с модулем Batch Editor 0.2.3
      Никакие системные файлы не затираются, модуль работает на vqmod/ocmod.
       
      Модуль тестировался на:
      Opencart
      1.5.1.3 1.5.2.1 1.5.3.1 1.5.4.1 1.5.5.1.1 1.5.6 1.5.6.4 2.0.1.1 2.0.3.1 2.1.0.1 2.1.0.2 2.2.0.0 2.3.0.2 MaxyStore
      1.5.4.1 1.5.5.1 2.0.1.1
      Поддерживаемые языки:
      русский украинский английский
      Пример работы модуля:
      http://ocstore1541.opencartplus.ru/
      http://opencart2.opencartplus.ru/

      Демо админки:
      http://ocstore1541.opencartplus.ru/admin/
      http://opencart2.opencartplus.ru/admin/
      доступ
      demo / demo

      Лицензия
      При покупке данного модуля, Вы получаете право установки его на один домен. Лицензионный ключ можно получить по запросу на e-mail, который вы увидите на странице модуля, после его установки.

      Установка
      Инструкция по установке находится в файле readme.txt в архиве модуля.

      Требования к серверу
      На хостинге должен быть PHP 5.3 или выше. Также должен быть установлен ionCube Loader версии 5.0 или выше. Чтобы проверить его наличие скачайте этот файл, разархивируйте его содержимое и закачайте в корневую директорию Вашего сайта. После этого откройте в браузере http://ваш_сайт/test_ioncube.php Для корректной работе на Опенкарте 1.5.х на вашем сайте должен быть установлен VQMOD не ниже версии 2.4.1, если у вас стоит версия ниже - нужно обновиться отсюда: https://github.com/vqmod/vqmod/releases Если вы собираетесь получать курсы валют автоматически с выбранного сайта то необходимо, чтобы на вашем сервере был включен curl. FAQ
      FAQ по модулю "Валюта плюс" FAQ общие вопросы по Опенкарту  
       
    • От zcell
      Вы можете задать у одних товаров цену в долларах, у вторых в рублях, а у третьих в фиксированной валюте (например, доллар = 65 руб) и все будет автоматически конвертироваться на клиентской стороне.
       
      Что делает модуль:
      Добавляет возможность указывать цены для товаров в разных валютах.
      Работает с любыми валютами, в том числе можно задать фиксированный курс.
       
      Преимущества:
      - Простая установка;
      - Не грузит систему;
      - Работы с любыми валютами;
      - Любое количество валют;
      - Автоконвертация при переключении валют на фронте.
      - Можно создавать ФИКСИРОВАННЫЕ валюты, например если ваш вендор поставляет товары по фиксированному курсу.
       
      Установка:
      Для Opencart 1.5.x:
      - Залить файл в папку xml
      Для Opencart 2.1.x, 2.2.x, 2.3.x:
      - воспользваться стандратным установщиков дополнений
       
      - Выполнить запрос в базе данных, который создаст одно дополнительно поле (инструкция будет в конце xml файла)
      - Добавьте валюты (Система - Локализация - Валюты), если отсутствую необходимые валюты. Необходимо указать правильно код валюты - большими буквами, например RUB, USD, EUR
      - Выберите в каждом товаре, у которого валюта отлична от основной, нужную валюты (селектор находится справа от поля цены)
      - Если вам нужна фиксированная валюта (например 1 уе = 80 руб), то создаете новую валюту, пишите вымышленный код валюты, например FIX, FIC, FIE, чтобы система обновления не меняла курс автоматом, в поле значения курса пишите вычисленное в калькуляторе значение 1 / 80 = 0.0125 (обязательно точка в значении, не запятая), далее выбираете эту валюту в нужных товарах.
       
      Административная панель:
      - Цены товаров могут задавать в разных валютах (например указываете 10 USD в админке - на фронте будет цена по актуальному курсу доллара в рублях);
      - Валюты задаются как индивидуально для каждого товара, так и работает пакетное назначение, например в BatchEditor;
      - В заказах фиксируется сумма в рублях, по курсу соответствующему моменту оформления заказа (то есть цена товаров в заказе будет фиксирована).
       
      Фронт:
      - Все цены автоматически показываются в основной валюте сайта;
      - Работает конвертация цены Опций, Скидки за количество;
      - Работает конвертация в мини-корзине, корзине и оформлении заказа;
      - Также корректно работает переключение между валютами в интернет магазине с пересчетом по актуальным курсам.
       
      Обновление курса валют:
      - Происходит при открытии главной страницы административной панели;
      - Источником курса валют является ЦБ РФ и Yahoo (если не удалось получить данные у ЦБ РФ, получит у Yahoo).
       
      Валюты:
      1. стандартные валюты стран
      2. фиксированный курс доллара. Например, если поставщик зафиксировал курс на 75 руб.
      Можно будет завести валюту и указать ей нужный курс, при обновлении курс будет сохраняться.
      Интеграция:
      - с любыми шаблонами и модулями
      - Batch Editor - подхватит автоматом, нужно только в его настройках включить вывод поля
       
      Поддержка:
      В случае, если модуль не заработает в вашем магазине, могу оказать помощь по интеграции.
      Обязательно напишите адрес сайта, потребуется доступ по FTP и доступ в админку. Иначе практически нереально помощь.
      Взимается плата, если интеграция будет занимать более одного часа (например, если у вас сильно кастомизированный магазин или некорректно собранный магазин).
       
      Opencart 1.5.x:
      ДЕМО
      АДМИНКА
      demo
      demo
       
      Opencart 2.1.x, 2.2.x, 2.3.x:
      ДЕМО
      АДМИНКА
      demo
      demo
  • Последние посетители   0 пользователей онлайн

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