Вопрос нынче очень актуальный для UA владельцев сайтов=)) Автор темы похоже угадал, порылся я в гугле и файлах opencarta и нашёл проблему(по крайней мере у меня так): Opencart с завода смотрит на язык браузера и выставляет его в любом случае.
Код
// Language Detection
if (!empty($this->request->server['HTTP_ACCEPT_LANGUAGE']) && !array_key_exists($code, $languages)) {
$detect = '';
$browser_languages = explode(',', $this->request->server['HTTP_ACCEPT_LANGUAGE']);
// Try using local to detect the language
foreach ($browser_languages as $browser_language) {
foreach ($languages as $key => $value) {
if ($value['status']) {
$locale = explode(',', $value['locale']);
if (in_array($browser_language, $locale)) {
$detect = $key;
break 2;
}
}
}
}
if (!$detect) {
// Try using language folder to detect the language
foreach ($browser_languages as $browser_language) {
if (array_key_exists(strtolower($browser_language), $languages)) {
$detect = strtolower($browser_language);
break;
}
}
}
$code = $detect ? $detect : '';
}
if (!array_key_exists($code, $languages)) {
$code = $this->config->get('config_language');
}
if (!isset($this->session->data['language']) || $this->session->data['language'] != $code) {
$this->session->data['language'] = $code;
}
if (!isset($this->request->cookie['language']) || $this->request->cookie['language'] != $code) {
setcookie('language', $code, time() + 60 * 60 * 24 * 30, '/', $this->request->server['HTTP_HOST']);
}
// Overwrite the default language object
$language = new Language($code);
$language->load($code);
$this->registry->set('language', $language);
// Set the config language_id
$this->config->set('config_language_id', $languages[$code]['language_id']);
прячется в файле /магазин/storage/modification/catalog/controller/startup/startup.php
При смене языка браузера на Украинский - сайт запускается на Украинском, инкогнито не спасает в случае с автоопределением языка.
Кто силён в коде, давайте вместе поломаем это автоопределение, нашел ещё несколько тем у людей с такой же проблемой, но решения пока нигде нет. Толи Ув. знатоки кода так усердно отмораживаются, что бы заработать, либо не нашлось еще такого гуру, который перепишет\правильно вырежет код автоопределения.