编程语言
首页 > 编程语言> > php – 如何为opencart多商店使用单独的语言文件?

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

作者:互联网

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

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

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

请帮我.
提前致谢!

解决方法:

不确定这是否是最优雅的方式,但这是一个首先浮现在脑海中的黑客:

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

标签:opencart,shopping-cart,php
来源: https://codeday.me/bug/20190901/1779881.html