【问题标题】:How to use separate language files for opencart multi stores?如何为 opencart 多商店使用单独的语言文件?
【发布时间】:2013-04-23 05:05:10
【问题描述】:

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

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

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

请帮助我。 提前致谢!

【问题讨论】:

    标签: php opencart shopping-cart


    【解决方案1】:

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

    1. 在 Admin 中创建多种语言,即English_sportsEnglish_watchesFrench_sports 等。
    2. 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']
                );  
            }
        }
    

    【讨论】:

    • 伟大的小黑客 B-and-P! +1
    猜你喜欢
    • 1970-01-01
    • 2017-01-17
    • 2015-06-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-12-20
    • 2016-10-25
    • 2019-02-18
    相关资源
    最近更新 更多