Перейти до вмісту
Пошук в
  • Детальніше...
Шукати результати, які ...
Шукати результати в ...

смена валюты с р. на RUB.


nickolson

Recommended Posts

Добрый вечер!

Никогда не работал с опенкарт, но вот попросили очень срочно сделать одну фишку. По стандарту на сайте цена в

рублях - "р.", нужно при переключении на английскую версию выводить "RUB".

Подскажите пожалуйста, как это реализовать?

Надіслати
Поділитися на інших сайтах


Добрый вечер.

 

Можно сделать небольшой костыль.

В файле system/library/currency после кода:

	if ($currency && $this->has($currency)) {
      		$symbol_left   = $this->currencies[$currency]['symbol_left'];
      		$symbol_right  = $this->currencies[$currency]['symbol_right'];
      		$decimal_place = $this->currencies[$currency]['decimal_place'];
    	} else {
      		$symbol_left   = $this->currencies[$this->code]['symbol_left'];
      		$symbol_right  = $this->currencies[$this->code]['symbol_right'];
      		$decimal_place = $this->currencies[$this->code]['decimal_place'];
			
			$currency = $this->code;
    	}

Добавить строку:

    	$symbol_right = $this->language->get($this->code . '_symbol_right');

Потом в языковой файл catalog/language/russian/russian.php добавить:

$_['RUB_symbol_right']        = 'р.';

 

и в catalog/language/english/english.php

$_['RUB_symbol_right']        = 'RUB';

 

Для других валют, добавить соответственно.

Надіслати
Поділитися на інших сайтах

Более правильно заменить строку:

$symbol_right  = $this->currencies[$this->code]['symbol_right'];

На:

$symbol_right = $this->language->get($this->code . '_symbol_right');

Строку:

$symbol_right  = $this->currencies[$currency]['symbol_right'];

Заменить на:

$symbol_right = $this->language->get($currency . '_symbol_right');
Надіслати
Поділитися на інших сайтах

в итоге файл  system/library/currency должен быть:

if ($currency && $this->has($currency)) {
      		$symbol_left   = $this->currencies[$currency]['symbol_left'];
      		$symbol_right = $this->language->get($currency . '_symbol_right');
      		$decimal_place = $this->currencies[$currency]['decimal_place'];
    	} else {
      		$symbol_left   = $this->currencies[$this->code]['symbol_left'];
      		$symbol_right = $this->language->get($this->code . '_symbol_right');
      		$decimal_place = $this->currencies[$this->code]['decimal_place'];
			
			$currency = $this->code;
    	}

верно?

Надіслати
Поділитися на інших сайтах


в итоге файл  system/library/currency должен быть:

верно?

Это:

	if ($currency && $this->has($currency)) {
      		$symbol_left   = $this->currencies[$currency]['symbol_left'];
      		$symbol_right  = $this->currencies[$currency]['symbol_right'];
      		$decimal_place = $this->currencies[$currency]['decimal_place'];
    	} else {
      		$symbol_left   = $this->currencies[$this->code]['symbol_left'];
      		$symbol_right  = $this->currencies[$this->code]['symbol_right'];
      		$decimal_place = $this->currencies[$this->code]['decimal_place'];
			
			$currency = $this->code;
    	}

Заменить на это:

	if ($currency && $this->has($currency)) {
      		$symbol_left   = $this->currencies[$currency]['symbol_left'];
      		$symbol_right = $this->language->get($currency . '_symbol_right');
      		$decimal_place = $this->currencies[$currency]['decimal_place'];
    	} else {
      		$symbol_left   = $this->currencies[$this->code]['symbol_left'];
      		$symbol_right = $this->language->get($this->code . '_symbol_right');
      		$decimal_place = $this->currencies[$this->code]['decimal_place'];
			
			$currency = $this->code;
    	}
Надіслати
Поділитися на інших сайтах

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

500.00RUB_symbol_right

А хотелось бы в русской версии видеть - 500.00 р.

а в анг. 500.00 RUB.

Надіслати
Поділитися на інших сайтах


Вы не добавили строки в зыковые файлы.

 

В языковой файл catalog/language/russian/russian.php добавить:

$_['RUB_symbol_right']        = ' р.';

 

и в catalog/language/english/english.php

$_['RUB_symbol_right']        = ' RUB';

Надіслати
Поділитися на інших сайтах

Створіть аккаунт або увійдіть для коментування

Ви повинні бути користувачем, щоб залишити коментар

Створити обліковий запис

Зареєструйтеся для отримання облікового запису. Це просто!

Зареєструвати аккаунт

Вхід

Уже зареєстровані? Увійдіть тут.

Вхід зараз
  • Зараз на сторінці   0 користувачів

    • Ні користувачів, які переглядиють цю сторінку
×
×
  • Створити...

Important Information

На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність.