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

[HowTo] Разные валюты в админке и на сайте

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

Всем привет.

 

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

Нашел решение, вот делюсь, вдруг, кто-то то же такое ищет. 

 

Все до удивительного просто. Вы должны указать опенкарту главную валюту одну, а пользователю (браузеру пользователя) указать другую. И будет произведен пересчет для него.

 

Меняем всего одну строку в файле /system/library/currency.php

В функции 

public function __construct($registry) {

в последней ее строке (строка 33 в OcStore 1.5.4.1) меняем

$this->set($this->config->get('config_currency'));

на

$this->set('UAH');

в данном случае я в админке создал валюту "гривны" с кодом "UAH"

У рубля это код "RUB"

У доллара "USD"

 

Функция set(); задает пользователю начальную валюту

Вот и все, надеюсь, кому-то это поможет

  • +1 1

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


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

Есть еще решение через vQmod


<modification>
    <id>Set default currency</id>
    <version>1</version>
    <vqmver>2.3.0</vqmver>
    <author>Andrei Bogdan (andrei.opencart@yahoo.com)</author>
	<file name="catalog/controller/module/currency.php">
		<operation>
			<search position="before"><![CDATA[
				$this->language->load('module/currency');
			]]></search>
			<add><![CDATA[
				elseif($this->currency->getCode() != "UAH") {
				
					$this->currency->set("UAH");
					
					unset($this->session->data['shipping_method']);
					unset($this->session->data['shipping_methods']);
					if (isset($this->request->post['redirect'])) {
						$this->redirect($this->request->post['redirect']);
					} else {
						$this->redirect($this->url->link('common/home'));
					}
				}
			]]></add>
		</operation>
	</file>
</modification>

Может кто подскажет, как указать валюту для категории в админке соответственно сменили курс евро, он пересчитался в гривны на морде, но у категорий в гривне цена не изменилась?

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


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

Изучив то, что тут есть по данной теме решила сделать свой модуль более пригодный для этого. ))

https://opencartforum.com/files/file/1645-валюта-плюс/

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


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

Изучив то, что тут есть по данной теме решила сделать свой модуль более пригодный для этого. ))

https://opencartforum.com/files/file/1645-валюта-плюс/

У модуля фатальный конфликт с Options Boost и подобными.

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


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

У модуля фатальный конфликт с Options Boost и подобными.

 

Все конфликты надо смотреть конкретно. Нельзя сразу предусмотреть совместимость со всеми модулями какие только существуют - про Options Boost я вообще первый раз слышу. Изначально делаю совместимость с тем, с чем мне приходилось иметь дело.

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


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

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

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

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

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

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

Войти

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

Войти

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

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


      Мультивалютный магазин с автоконвертацией по курсу ЦБ РФ и Yahoo
      ВОЗМОЖНОСТИ:
      - Актуальные цены по курсу ЦентроБанка РФ и Yahoo.
      - Возможность указать разные валюты у товаров;
      - Возможность использовать валюты с фиксированным курсом;
      - Клиенты видят суммы в валюте по умолчанию (расчитанные по актуальному курсу);
      - Автоматическое обновление курса валют.
       
       
      ПРЕИМУЩЕСТВА:
      - Простая установка;
      - Интеграция в ядре системы, что позволяет получить интеграцию с подавляющим большинством модулей и шаблонов;
      - Не грузит систему, всего один файл.
        
       
      ПОДДЕРЖКА:
      В случае, если модуль не заработает в вашем магазине (10% вероятность), могу оказать бесплатную помощь по интеграции, но не более 30 минут (в 90% случаев этого времени достаточно).
      Сообщения без адреса сайта будут игнорируются. Для помощи по интеграции потребуется доступ по FTP и доступ в административную панель.
       
         
       
       
      УСТАНОВКА:
      Для Opencart 1.5.x:
      - Закачать через FTP файл модуля в папку vqmod/xml
      Для Opencart 2.1.x, 2.2.x, 2.3.x:
      - воспользоваться стандартным установщиком дополнений Opencart.
       
       
      ИНСТРУКЦИЯ:
      - Выполнить запрос в базе данных, который создаст одно дополнительно поле (инструкция будет в конце xml файла)
      - Добавьте валюты (Система - Локализация - Валюты), если отсутствую необходимые валюты. Необходимо указать правильно код валюты - большими буквами, например RUB, USD, EUR
      - Выберите в каждом товаре, у которого валюта отлична от основной, нужную валюты (селектор находится справа от поля цены)
      - Если вам нужна фиксированная валюта (например 1 уе = 80 руб), то создаете новую валюту, пишите вымышленный код валюты, например FIX, FIC, FIE, чтобы система обновления не меняла курс автоматом, в поле значения курса пишите вычисленное в калькуляторе значение 1 / 80 = 0.0125 (обязательно точка в значении, не запятая), далее выбираете эту валюту в нужных товарах.
        
      Административная панель:
      - Цены товаров могут задавать в разных валютах (например указываете 10 USD в админке - на фронте будет цена по актуальному курсу доллара в рублях);
      - Валюты задаются как индивидуально для каждого товара, так и работает пакетное назначение, например в BatchEditor;
      - В заказах фиксируется сумма в рублях, по курсу соответствующему моменту оформления заказа (то есть цена товаров в заказе будет фиксирована).
       
      Фронт:
      - Все цены автоматически показываются в основной валюте сайта;
      - Работает конвертация цены Опций, Скидки за количество;
      - Работает конвертация в мини-корзине, корзине и оформлении заказа;
      - Также корректно работает переключение между валютами в интернет магазине с пересчетом по актуальным курсам.
       
      Обновление курса валют:
      - Происходит при открытии главной страницы административной панели;
      - Источником курса валют является ЦБ РФ и Yahoo (если не удалось получить данные у ЦБ РФ, получит у Yahoo).
       
      Валюты:
      1. стандартные валюты стран
      2. фиксированный курс доллара. Например, если поставщик зафиксировал курс на 75 руб.
      Можно будет завести валюту и указать ей нужный курс, при обновлении курс будет сохраняться.
      Добавил zcell Добавлено 28.12.2015 Категория Цены, скидки, акции, подарки Системные требования Сайт разработчика https://true-studio.ru Старая цена 600 Метод активации Без активации Ioncube Loader Нет OpenCart 3.0
      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.5.1
      1.5.5
      1.5.4.1
      1.5.3.1 ocStore 3.0
      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 Не проверялось  
    • От zcell
      ВОЗМОЖНОСТИ:
      - Актуальные цены по курсу ЦентроБанка РФ и Yahoo.
      - Возможность указать разные валюты у товаров;
      - Возможность использовать валюты с фиксированным курсом;
      - Клиенты видят суммы в валюте по умолчанию (расчитанные по актуальному курсу);
      - Автоматическое обновление курса валют.
       
       
      ПРЕИМУЩЕСТВА:
      - Простая установка;
      - Интеграция в ядре системы, что позволяет получить интеграцию с подавляющим большинством модулей и шаблонов;
      - Не грузит систему, всего один файл.
        
       
      ПОДДЕРЖКА:
      В случае, если модуль не заработает в вашем магазине (10% вероятность), могу оказать бесплатную помощь по интеграции, но не более 30 минут (в 90% случаев этого времени достаточно).
      Сообщения без адреса сайта будут игнорируются. Для помощи по интеграции потребуется доступ по FTP и доступ в административную панель.
       
         
       
       
      УСТАНОВКА:
      Для Opencart 1.5.x:
      - Закачать через FTP файл модуля в папку vqmod/xml
      Для Opencart 2.1.x, 2.2.x, 2.3.x:
      - воспользоваться стандартным установщиком дополнений Opencart.
       
       
      ИНСТРУКЦИЯ:
      - Выполнить запрос в базе данных, который создаст одно дополнительно поле (инструкция будет в конце xml файла)
      - Добавьте валюты (Система - Локализация - Валюты), если отсутствую необходимые валюты. Необходимо указать правильно код валюты - большими буквами, например RUB, USD, EUR
      - Выберите в каждом товаре, у которого валюта отлична от основной, нужную валюты (селектор находится справа от поля цены)
      - Если вам нужна фиксированная валюта (например 1 уе = 80 руб), то создаете новую валюту, пишите вымышленный код валюты, например FIX, FIC, FIE, чтобы система обновления не меняла курс автоматом, в поле значения курса пишите вычисленное в калькуляторе значение 1 / 80 = 0.0125 (обязательно точка в значении, не запятая), далее выбираете эту валюту в нужных товарах.
        
      Административная панель:
      - Цены товаров могут задавать в разных валютах (например указываете 10 USD в админке - на фронте будет цена по актуальному курсу доллара в рублях);
      - Валюты задаются как индивидуально для каждого товара, так и работает пакетное назначение, например в BatchEditor;
      - В заказах фиксируется сумма в рублях, по курсу соответствующему моменту оформления заказа (то есть цена товаров в заказе будет фиксирована).
       
      Фронт:
      - Все цены автоматически показываются в основной валюте сайта;
      - Работает конвертация цены Опций, Скидки за количество;
      - Работает конвертация в мини-корзине, корзине и оформлении заказа;
      - Также корректно работает переключение между валютами в интернет магазине с пересчетом по актуальным курсам.
       
      Обновление курса валют:
      - Происходит при открытии главной страницы административной панели;
      - Источником курса валют является ЦБ РФ и Yahoo (если не удалось получить данные у ЦБ РФ, получит у Yahoo).
       
      Валюты:
      1. стандартные валюты стран
      2. фиксированный курс доллара. Например, если поставщик зафиксировал курс на 75 руб.
      Можно будет завести валюту и указать ей нужный курс, при обновлении курс будет сохраняться.
    • От ikarus
      Скачать/Купить дополнение


      Обновление курсов валют с ЦБРФ
      замена стандартному валютному модулю, в отличии от которого забирает курсы валют с центробанка рф
      заменяет файл admin/model/localisation/currency.php
      для установки скопировать в корень сайта, согласиться с заменой текущего файла
      на хостинге требуется наличие curl и simplexml
      12.12.2013 Update:
      - изменил проверку даты последнего обновления валют, теперь процесс обновление валют происходит только при условии что дата последнего обновления любой из валют меньше текущей.
      - добавил простенькую проверку доступности страницы загрузки xml файла на сайте цбрф, в случае каких либо проблем выводится сообщение с кодом статуса ответа сервера цб
      17.04.2014 Update:
      - не большая оптимизация кода
      - добавил версию с возможностью ручного обновления курсов из админки (cbr_all_currency_with_manual_update.zip) , версия заменяет три файла: admin\controller\localisation\currency.php, admin\model\localisation\currency.php и admin\view\template\localisation\currency_list.tpl, позже сделаю vqmod версию
      22.04.14
      -так как курсы обновляются только после входа в админку сделал скрипт для автоматизации обновления (currency-updater.php), скрипт можно запускать через cron как в cli так и с помощью curl/wget
      Добавил ikarus Добавлено 03.07.2013 Категория Прочее Системные требования Метод активации Без активации Ioncube Loader Нет OpenCart Несовместим ocStore 1.5.4.1.2
      1.5.4.1.1
      1.5.4.1
      1.5.3.1 OpenCart.Pro, ocShop Не проверялось  
    • От MrPhila
      Привет, я стараюсь писать здесь на русском языке. Извините за ошибки.
       
      Я обнаружил ошибку при обработке checkout в отличие от валюты по умолчанию.
      Корзина покупок совершает ошибку с +/-0.01.
       
      При поступлении валюты по умолчанию все в порядке. Когда он обращается в другую валюту, сумма ошибочна, и это связано с округлыми десятичными знаками.
      Например:
      Цена продукта по умолчанию: 4.98 EUR и доставка 0.50 EUR, когда вы меняете валюту на USD (1 EUR = 1.17 USD), в таблице это:
      Продукт 1 = 5.83 USD
      Доставка = 0.59 USD
       
      но Opencart суммируется в фоновом режиме:
      Продукт 1 = 5.8266 USD + Доставка = 0,585 USD, а затем округлить его в сумме = 6.41 USD, которая отличается от суммы цен в таблице, которая равна 6.42 USD.
      В результате, когда checkout подтвержден, банковский модуль не принимает и открывает страницу с ошибкой.
       
      Вы знаете, как решить эту проблему?
      Как заставить корзину суммировать первоначально округленные цены, которые показаны в таблице?
    • От ashap
      550.00 руб
      Скачать/Купить дополнение


      Автоматическое обновление курса валют
      Модуль позволяет обновлять курс валют с сайтов ЦБ РФ (cbr.ru), НБ Украины (bank.gov.ua), Приват Банк (privatbank.ua), НБ РБ (nbrb.by), Европейский ЦБ (ecb.int). Использует стандартный функционал обновления раз в сутки при заходе на главную админ панели, ручного обновления из списка валют, а также имеет уникальную функцию обновления по расписанию через cron
       
      Модуль умеет увеличивать полученный курс на заданный процент.
       
      * Не заменяет системные файлы
      * Не требует vqmod
      * Устраняет ошибку в админ панели Warning: Division by zero in ...../admin/model/localisation/currency.php
       
      Смотрите также другие модули по ссылке
       
       
      Добавил ashap Добавлено 04.06.2018 Категория Модули Системные требования Для работы автоматического обновления по расписанию на хостинге (сервере) необходим cron с поддержкой curl или wget Сайт разработчика https://store.pe-art.ru/ Старая цена Метод активации Автоматическая активация Ioncube Loader Нет OpenCart 3.0
      2.3
      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.5.1
      1.5.5
      1.5.4.1
      1.5.3.1 ocStore 3.0
      2.3
      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 OpenCart.Pro, ocShop Opencart.pro 2.3
      Opencart.pro 2.1
      OcShop 2.0.3.х
      OcShop 1.5.6.4.х  
  • Последние посетители   0 пользователей онлайн

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

×