OpenCart - 中文论坛

标题: 系统自动根据运行环境识别语言并切换到对应货币 [打印本页]

作者: mengwb    时间: 2013-12-24 09:50
标题: 系统自动根据运行环境识别语言并切换到对应货币
本功能主要实现在用户登陆时根据用户的电脑环境自动将网站切换到对应语言语言,并且货币跟着自动切换到对应货币。实现方法如下(下面以中文、英文,对应货币人民币、美元为例,其他语言和货币参考即可):

1、打开网站根目录下的index.php文件。查找如下代码:
        $registry->set('currency', new Currency($registry));
        在此行代码前添加:
        if ($code == "en") {
                $request->get['currency'] = 'USD';
        } elseif ($code == "zh") {
                $request->get['currency'] = 'CNY';
        }
2、登陆系统后台,进入菜单system->localisation->languages,分别编辑中文和英文的语言设置,将locale字段设置如下:
        英文语言的locale设置:en_US.UTF-8,en_US,en-US,en-us,en-gb,english,en
        中文语言的locale设置:zh_CN.UTF-8,zh_CN,zh-Hans-CN,zh-cn,china,zh
        如此设置语言可保证在火狐和ie浏览器中正常实现系统根据本地电脑的浏览器环境设置,自动将网站以适应的语言打开。

注:关于语言的自动识别,系统会将结果存储到缓存中,再次打开网站会首先读取缓存中的设置,所以如果有缓存,再次打开网站时自动切换将不能生效,这也是符合用户良好体验的,但大家测试的话记得清缓存。

本文作者:wenbin.meng,QQ:361826223


作者: sunboy    时间: 2013-12-24 18:16
这个挺有用处的,顶一个
作者: 小金    时间: 2014-6-23 21:52
这个功能实现的是google自动翻译,还是安装其他语言包后,系统自动跳转?
作者: sunboy    时间: 2014-6-26 09:59
和GG没有关系,是系统环境自动识别
作者: mengwb    时间: 2014-9-18 10:20
小金 发表于 2014-6-23 21:52
这个功能实现的是google自动翻译,还是安装其他语言包后,系统自动跳转?

不关谷歌的事,网站后台需要同时安装中英文语言包。




欢迎光临 OpenCart - 中文论坛 (https://bbs.opencart.cn/) Powered by Discuz! X3.2