wecenter国际化操作(根据用户浏览器语言来获取)

    今天在群里问了官方,说网站语言需要在后台设置。
    但是我希望的是国际化。就是自动根据浏览器的语言来展示不同语言。
    所以我研究了下代码并做了一些修改。测试是可以的。

    但是就是无法升级。升级完之后还需要重新再做一遍。希望官方增加这个功能把。

    修改代码如下:

    修改文件 /system/core/lang.php

    在 代码

    $language_file = ROOT_PATH . 'language/' . SYSTEM_LANG . '.php';

    前面增加:

		$accept_lang = substr($_SERVER['HTTP_ACCEPT_LANGUAGE'], 0, 4); 
if (preg_match("/zh-c/i", $accept_lang)) $accept_lang = '';
else if (preg_match("/zh/i", $accept_lang)) $accept_lang = '';
else if (preg_match("/en/i", $accept_lang)) $accept_lang = 'en_US';
else if (preg_match("/ko/i", $accept_lang)) $accept_lang = 'ko_KOREA';
define('SYSTEM_LANG', $accept_lang);

即可。我这只是针对官方的 英语和汉语做了兼容。


如果你需要自己定义内容,则可以在这两个语言里做修改。

比如:

在/lang/en_US.php里增加:

$language['MD5加密'] = 'MD5 Message-Digest Algorithm';


然后再main.php里通过:

TPL::assign('description', AWS_APP::lang()->_t('MD5加密'));


效果如:

http://www.devtools.cn/enc/md5/ 


如果我们修改浏览器语言 改成英文:


就会变成:


之前网站都是用的中文,要修改的地方还是很多呀 

0 个评论

要回复文章请先登录注册