+0 000-000-00-00

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

В дополнении 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'

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

    Menu