思路:用Cookies记录语言环境,通过HTTP请求检测出客户端语言(如: zh_cn),让程序自动匹配语言包。(目前基本上是这样子滴。)
一、准备工作:
到官方下载最新的语言包,http://download.comsenz.com/DiscuzX/
调整/source/language/语言包目录结构(这里示例真三国,只要您喜欢可以建更多。):
/source/locale/zh_CN<--------->简体<--------->Chinese
/source/locale/zh_TW<--------->繁体<--------->Taiwanese
/source/locale/en_US<--------->英文<--------->English
(如何操作?以简体中文为例,将程序包中language目录下所有文件拷到zh_CN目录下。)
二、实现方法,请按以下操作步骤:
第一步,找到引入语言包的文件,通过系统搜索功能查找文字”language/”可找到:
class_template.php<--------->/source/class
function_core.php<--------->/source/function
lang_admincp.php<--------->/source/language
查找(共4处):
discuz_ROOT.'./source/language
替换为:
DISCUZ_LOCALE.'
第二步,让我们要引入自定义的DISCUZ_LOCALE,打开class_core.php以下文件,
class_core.php<--------->/source/class
2.1查找:
$_GET['diy'] = empty($_GET['diy']) ? '' : $_GET['diy'];
下面加:
require_once DISCUZ_ROOT.'./source/discuz_locale.php';
2.2将下面的内容保存为/source/discuz_locale.php
语言切换部分已优化,届时请在新应用中心下载插件。
到此,您可以通过网址切换了,后台已经实现多语言了。
测试一下吧:http://localhost/admin.php?lang=cn
接下来,再对DX前台模板做一下处理,敬请关注。
———————————————OVER——————————————————
(我敢肯定您对目前前台切换后看到的效果一定不是很满意,我们也是一样,
处理起来真不是一会会的事,接下来的文章有点长,请耐心等候。)
下期提要,我们会在主题模板(/template/default/)下新增的语言目录和文件,针对模板进行处理。
/template/default/locale
/template/default/locale/zh_CN.php
/template/default/locale/zh_TW.php
/template/default/locale/en_US.php
新闻热点
疑难解答