Путь дракона
Вход для пользователей
Забыли пароль?   Регистрация
Главная Новости Фото Скачать Статьи Форум
 

OpenCart - полезные советы

В дополнении pricelist оказался backdoor. См. подробнее.

 

Выбор языка и валюты

Для автоматического выбора валюты в зависимости от языка, нужно сделать одно из 2 изменений: #7

Код:
1. открываем catalog/controller/common/header.php
 
2. находим:
 
	$this->data['title'] = $this->document->getTitle();
 
3. Добавляем после:
	if ($this->config->get('config_language') == 'ru') {
		$this->currency->set('RUB');
	}

Вобще, этого должно быть достаточно. т.е. при русском языке на сайте у нас рубли. То же проделываем с en - USD и прочими - и жизнь прекрасна! 

Недостаток - если выбрать USD при переходе на другую страницу снова будут рубли. Поэтому убрал этот код.

Код:
Пилим system/library/currency.php
 
Находим:
	if (isset($this->request->get['currency']) && (array_key_exists($this->request->get['currency'], $this->currencies))) {
 
 
if($this->request->cookie['language'] != "en" && $this->language->get('code') == "en")
$this->set($this->config->get('config_currency'));
if($this->request->cookie['language'] != "ru" && $this->language->get('code') == "ru")
$this->set("UAH");

Т.е. снова, при русском языке будет гривна. Просто реализовано немного по-другому. Оба способа жизнеспособны.

Второй способ не пробовал.

Сделал по инструкции в FAQ и здесь #39

Чтобы при первом заходе на сайт устанавливалась не валюта по умолчанию, а рубли - открываешь файл system\library\currency.php, находишь строку


$this->set($this->config->get('config_currency'));
и меняеш на такую строку
$this->set('RUB');

Если на сайте нет выбора валют то пользователи получившие куки с валютой отличной от рубли не смогут переключиться на рубли и будут видеть цены в валюте прописанной в их куках. Что-бы исправить эту проблему надо в том же файле system\library\currency.php найти строку


$this->set($this->request->cookie['currency']);
и заменить на такую
$this->set('RUB');


После завершения сессии (закрытие браузера или разлогинивание) у пользователей будут цены в рублях.
А если строку
$this->set($this->session->data['currency']);

 

Округление цен в рублях

#10В файле system.library/currency.php строку

        $string .= number_format(round($value,(int)$decimal_place),(int)$decimal_place, $decimal_point, $thousand_point);

заменить на

  if ($currency == 'RUB')
		{
			$string .= number_format(round($value, -2), (int)$decimal_place, $decimal_point, $thousand_point);
		}
		else
		{
			$string .= number_format(round($value, (int)$decimal_place), (int)$decimal_place, $decimal_point, $thousand_point);
		}

 Если надо округлять не до порядков, то примерно так

 до 500 надо так round(($value/5),-2)*5

 

Модуль Скидка для комплекта [Вместе дешевле] - Полная версия 1.11

Советы по настройке и исправлению проблем

Мне нужно было только добавить таблицу в БД

модуль платный, последняя версия 1.17. Тема поддержки на форуме

 

Сбросить пароль администратора

В phpmyadmin ввести sql запрос

update oc_user set `password`=md5('yourpassword') where `username`='admin'

 

Опубликована: 12.04.2015



Оценка(0)
Оценить эту статью: 


Комментарии
Меню
Дневник
Стихи
...
 18.03.2015 12:15
Мама умерла...
11 марта 2015 года моей мамочки не стало... ...
 18.03.2015 11:22
Грецкий орех влияет на работу сердца и позволяет сохранять стабильный вес
...
 04.01.2014 17:13
Кащей устал.
...
 04.10.2013 19:42
Как устроена вселенная
все звезды в конце концов погаснут... ...
 12.03.2013 02:01
Все новости
Кто на сайте
Администраторы: 0
Пользователи: 0
Гости: 4
Всего: 4

Список пользователей
Главная Новости Фото Скачать Статьи Форум
Сайт работает на LinkorCMS Все права защищены. © 2012-2014 dragon.444r.ru  
Эл. почта: sshifter@mail.ru