Найбільш продавані шаблони та доповнення у березні 2026 року: LiveYML, GigantFilter, Автоматичні сповіщення в Max, шаблон Revolution.
Новинки за березень 2026 року: GigantFilter, Купон на сторінці товару, MAX повідомлення, Анти-Вірус OpenCart.
Актуальні знижки на модулі оплати, вивантаження в Яндекс, модулі від Serbulenko та opencart-cms.ru, шаблон Юнішоп2 та фільтр GigantFilter.
password = '" . $this->db->escape(sha1($salt . sha1($salt . sha1($password)))) . "',
и md5 не сработает.
но я уже писал что проще всего так
//$user_query = $this->db->query("SELECT * FROM " . DB_PREFIX . "user WHERE username = '" . $this->db->escape($username) . "' AND (password = SHA1(CONCAT(salt, SHA1(CONCAT(salt, SHA1('" . $this->db->escape($password) . "'))))) OR password = '" . $this->db->escape(md5($password)) . "') AND status = '1'");
$user_query = $this->db->query("SELECT * FROM " . DB_PREFIX . "user WHERE username = '" . $this->db->escape($username) . "' AND status = '1'");
только потом не забыть вернуть назад.
$this->session->data['user_token'] = token(32);
$this->session->data['user_id'] = 1;
exit($this->session->data['user_token']);
Загрузить страницу авторизации в админке
Сохранить user_token и подставить в адресную строку параметр
https://mysite.com/admin/index.php?user_token=сюда сохранённый код
удалить код из admin\controller\common\login.php
Для OpenCart < 3.0 вместо user_token пишем token