Php 如何为opencart多商店使用单独的语言文件?

Php 如何为opencart多商店使用单独的语言文件?,php,opencart,shopping-cart,Php,Opencart,Shopping Cart,我使用的是opencart版本1.5.5.1。我们有一个使用opencart框架编码的网站。该网站还使用opencart多商店功能。所有商店都使用英语 现在的问题是,是否可以为不同的商店使用不同的语言标签? 例如:一家商店与体育用品有关,另一家商店与手表有关。因此,我们需要在一家商店使用与体育用品相关的语言标签,在另一家商店使用与手表相关的语言标签 我不确定这是否可能,因为在opencart中,我们通过每个模块的控制器文件加载语言文件 请帮帮我。 提前谢谢 不确定这是否是最优雅的方式,但首先想到

我使用的是opencart版本1.5.5.1。我们有一个使用opencart框架编码的网站。该网站还使用opencart多商店功能。所有商店都使用英语

现在的问题是,是否可以为不同的商店使用不同的语言标签? 例如:一家商店与体育用品有关,另一家商店与手表有关。因此,我们需要在一家商店使用与体育用品相关的语言标签,在另一家商店使用与手表相关的语言标签

我不确定这是否可能,因为在opencart中,我们通过每个模块的控制器文件加载语言文件

请帮帮我。
提前谢谢

不确定这是否是最优雅的方式,但首先想到的是一个技巧:

  • 在管理中创建多种语言,即
    英语体育
    英语手表
    法语体育
  • catalog/comtroller/module/language.php
    中添加一个条件语句以捕获并筛选出不需要的语言:
  • 查找第32行:

    $results=$this->model\u localization\u language->getLanguages();
    
    加:

    $store\u id=$this->config->get('config\u store\u 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']
                );  
            }
        }
    

    伟大的小黑客B-and-P+1.