下载鸥 > 网站下载 > 开发教程 > 帝国CMS

帝国cms怎样制作多语言数据包?

277 2021-05-04 20:24:13

收藏
许多帝国cms带有多语言版本,如果每个语言都添加一次程序,不仅开发比较麻烦,维护起来也很麻烦。那么,我们怎样给帝国cms添加多语言包呢?

本文转自帝国cms论坛,原文链接http://bbs.phome.net/ShowThread/?threadid=160653&forumid=13

帝国cms怎样制作多语言数据包?

1、添加中文语言包

复制gb语言包,放入目录:/e/data/language/中,重命名为:”zh”;
另加入语言包(除gb语言包以外):针对模板的中文进行的语言包制作
命名为:template.php
数组名为:template_r
将开发中所有前台显示的语言加入其中作为数组元素,其数组元素与其他语言文件数组元素格式一致
如添加其他语言文件名与”zh”文件夹中一致(enews.php、fun.php、message.php、q_message.php、template.php五个文件),红色必须包含,否则错误!
 

2、制作语言包启动切换功能

在全局公共模板变量header中添加(可自定义位置):
<script type="text/javascript">
    function setlang(lang) {
    document.cookie = "WZ_lang="+lang;
}
</script>
<input type="button" value="English" onclick="setlang('en')" /><input type="button" value="中文" onclick="setlang('zh')" />
 

3、制作调用语言包公用头部信息

命名为:[!--temp.language--]
内容如下:
<!--code.start-->?php
$lang = $_COOKIE[WZ_lang]                                                         //调取语言
?($_COOKIE[WZ_lang].'/')
:'zh/';
$WZ_dir = count(explode('/',$_SERVER[PHP_SELF]))-2;
$WZ_lang_url_str ='';
for($WZ_i=0;$WZ_i<$WZ_dir;$WZ_i++){                                        //取得相对路径
$WZ_lang_url_str .= '../';       
}
@include_once($WZ_lang_url_str.'e/data/language/'.$lang.'pub/fun.php');//载入语言包
@include_once($WZ_lang_url_str.'e/data/language/'.$lang.'pub/q_message.php');
@include_once($WZ_lang_url_str.'e/data/language/'.$lang.'pub/template.php');
?<!--code.end-->
 

4、函数修改

修改gb语言包中的fun.php和q_message.php,以/e/data/language/gb/pub/fun.php文件为例!
只修改前台用到的数组元素,后台务做任何修改!
修改方法:'键名'=>'<?php echo $fun_r[键名];?>',
修改实例:
找到:
'pripage'=>'上一页',
修改为:
'pripage'=>'<?php echo $fun_r[pripage];?>',
 

5、template.php的操作方法

针对出现汉字的模板进行修改,以默认新闻列表模板为例:
模板中出现”您当前的位置:”
将汉字修改为:
<!--code.start-->?php echo $template_r[' here'];?<!--code.end-->
在template.php中添加元素
'here'=>'您当前的位置:',(zh语言包)
'here'=>'You are here:',(en语言包)
其他语言包都以此方法添加对应语言

以上就是帝国cms多语言包制作的完整教程。

本文地址:https://xzo.com.cn/develop/empire/896.html

有帮助,很赞!

信息来源:帝国cms论坛
导出教程 下载word版教程
发表评论 共有条评论
关于帝国CMS


帝国cms是一款功能极为强大的cms程序,性能强悍、安全性高,可轻松支持10万数据,高级开发人员可制作出能容纳千万数据量的网站,是国内最出色的开源cms程序之一,推荐企业用户使用

当前最新版本为7.5,8.0版本即将上线,新版本的核心优化点在于多终端的适配。

推荐帝国CMS开发教程
帝国CMS提示登录超时,怎样删除或设置超时时间?
帝国CMS提示登录超时,怎样删除或设置超时时间?

帝国CMS后台一段时间不用就会提示登录超时,总是要频繁登录很烦,要怎样取消登...

16 491
帝国CMS创建新栏目乱码怎么办?
帝国CMS创建新栏目乱码怎么办?

经常会有用户朋友反馈说新建的栏目页面怎么不对,或者说新建栏目怎么乱码了?总...

15 669
帝国CMS怎样高效快速的做猜你喜欢的随机调用功能?
帝国CMS怎样高效快速的做猜你喜欢的随机调用功能?

猜你喜欢小功能如果直接用rand()调用随机ID是非常消耗性能的。小网站几百几...

7 364
帝国cms怎样默认显示副标题ftitle,副标题为空时显示标题?
帝国cms怎样默认显示副标题ftitle,副标题为空时显示标题?

在帝国cms的开发应用中,标题作为文章的主体往往需要表意明显才能获得更好的...

1 392
帝国cms灵动标签怎样按字母调用信息?
帝国cms灵动标签怎样按字母调用信息?

帝国cms灵动标签是可以按照字母调用信息的,通过按字母调动,可以在信息分类时...

1 313
帝国cms误删了已收录的文章要怎么恢复数据?
帝国cms误删了已收录的文章要怎么恢复数据?

客户站点由于员工操作失误,直接删除了20篇文章。如果有定期备份,那恢复数据即...

0 353
帝国cms会员中心怎样调用我提交的反馈历史记录?
帝国cms会员中心怎样调用我提交的反馈历史记录?

帝国cms信息反馈表非常好用,通过合理开发信息反馈功能,我么可以实现用户留言...

1 233
怎样提高帝国cms的生成刷新效率?
怎样提高帝国cms的生成刷新效率?

帝国cms是一款功能强大的cms,不仅安全性高,还能够轻松驾驭20万以上的数据,牛逼...

1 416
随机帝国CMS开发教程
帝国cms数据库全部表名与含义解读
帝国cms数据库全部表名与含义解读

帝国cms系统有200多张数据表,不同的数据库分别有不同的含义。现将帝国cms系...

0 1009
帝国cms灵动标签日期用英文显示的方法
帝国cms灵动标签日期用英文显示的方法

我们知道,帝国cms的日期可以根据需要调用问多种格式,如x年x月x日、年-月-日、...

0 268
帝国cms中的tag标签怎样以中文url的形式展示
帝国cms中的tag标签怎样以中文url的形式展示

我们知道,url中包含中文可以更好的匹配搜索关键词,在排名上有一定的促进效果...

0 262
帝国CMS提示信息函数printerror()怎么用?
帝国CMS提示信息函数printerror()怎么用?

我们知道js有alert属性可用于弹窗提示,但比较难看。帝国cms的弹窗提示虽然同...

0 329
帝国cms调用我的好友头像
帝国cms调用我的好友头像

帝国cms怎样调用我的好友头像,让界面更加美观大气呢?...

0 271
帝国cms留言评论怎样做字符过滤?
帝国cms留言评论怎样做字符过滤?

一个网站的评论如果不加管理,那么这个网站轻则影响排名与流量,重则涉及到原则...

0 264
帝国cms怎样防止垃圾留言?
帝国cms怎样防止垃圾留言?

帝国cms留言板使用比较广泛,但如果不做合理配置,则会出现被垃圾留言刷屏的情...

1 506
帝国cms短信宝接口点击发送验证码没反应
帝国cms短信宝接口点击发送验证码没反应

很多帝国cms客户使用短信宝做短信发送接口,速度还是挺不错的。但在使用过程...

0 400
客服QQ:341553759
点击咨询 常见问题 >
官方交流群:90432500
点击加入