Я использую opencart версию 1.5.5.1. У нас есть сайт, закодированный с использованием каркаса opencart. На сайте также используется функция многозадачности opencart. Все магазины используют английский язык.
Теперь вопрос в том, можно ли использовать разные языковые метки для разных магазинов? Например: Один магазин связан со спортивными предметами, а другой – с наручными часами. Поэтому нам нужно использовать языковые ярлыки, относящиеся к спортивным предметам, в одном магазине и языковые метки, связанные с часами для другого.
Я не уверен, возможно ли это или нет, так как в opencart мы загружаем языковые файлы через файл контроллера каждого модуля.
Пожалуйста, помогите мне. Заранее спасибо!
Не уверен, что это самый изящный способ, но вот первый взлом:
English_sports
, English_watches
, French_sports
и т. Д. catalog/comtroller/module/language.php
добавить условный оператор для catalog/comtroller/module/language.php
и фильтрации catalog/comtroller/module/language.php
языков: Найдите строку 32:
$results = $this->model_localisation_language->getLanguages();
Добавить:
$store_id = $this->config->get('config_store_id');
В цикле совокупности данных добавьте свой условный и строковый код очистки:
foreach ($results as $result) { if ($store_id == "0" && $result['name'] == 'English_sports'){continue;} $strings = array("_sports","_watches"); if ($result['status']) { $this->data['languages'][] = array( //clean name strings for output 'name' => str_replace($strings,'',$result['name']), 'code' => $result['code'], 'image' => $result['image'] ); } }