Discuz开发 DISCUZ! X 多国语言实现方法

[复制链接]
ARCHY明星会员实名认证 发表于 2015-4-2 22:51:10 [Discuz开发] 显示全部楼层 |阅读模式 上一主题 下一主题

马上注册,一起探讨正确快速的建站方法

您需要 登录 才可以下载或查看,没有帐号?快速注册

x
思路:用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

以上转载Onexin Team开发,我们目前已经找到一个discuz x3.2的国际版(目前拥有10多种语言),但目前还存在一些问题,希望可以沟通完成后分享给大家。




上一篇:discuz3.2简单去除forum.php小尾巴!
下一篇:Discuz X3/X3.1点击diy没反应问题解决方法

大神点评2

vipsc 发表于 2015-4-8 11:24:25 [Discuz开发] 显示全部楼层
非常好 ,我一直很看好vot的多国语言版本,真的有很大需求空间。
最起码在模版这一块会很丰富。希望你们可以尽快达成共识。加油!
雅轩怡歌 发表于 2015-4-11 13:01:47 [Discuz开发] 显示全部楼层
最近鸭梨真的很大啊
您需要登录后才可以回帖 登录 | 快速注册

本版积分规则

快速回复 返回顶部 返回列表