我正在使用 opencart 版本 1.5.5.1。我们有一个使用 opencart 框架编码的网站。该站点还使用 opencart 多商店功能。所有商店都使用英语。
现在的问题是,是否可以为不同的商店使用不同的语言标签?例如:一家商店与体育用品有关,另一家与手表有关。因此,我们需要在一个商店中使用与运动项目相关的语言标签,而在另一家商店中使用与手表相关的语言标签。
我不确定这是否可能,因为在 opencart 中,我们通过每个模块的控制器文件加载语言文件。
请帮我。提前致谢!
我正在使用 opencart 版本 1.5.5.1。我们有一个使用 opencart 框架编码的网站。该站点还使用 opencart 多商店功能。所有商店都使用英语。
现在的问题是,是否可以为不同的商店使用不同的语言标签?例如:一家商店与体育用品有关,另一家与手表有关。因此,我们需要在一个商店中使用与运动项目相关的语言标签,而在另一家商店中使用与手表相关的语言标签。
我不确定这是否可能,因为在 opencart 中,我们通过每个模块的控制器文件加载语言文件。
请帮我。提前致谢!
不确定这是否是最优雅的方式,但首先想到的是一个 hack:
English_sports
,English_watches
等French_sports
。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']
);
}
}