DESTOON做中英双语言(多语言)切换版本具体详解
第一次发原创好激动,该注意点什么?
在开发过程中用户有许多要求,比如这个多语言切换就是一个需求。
首先讲解一下DESTOON(DT)后台系统如何做这个中英、甚至多语言切换的这个功能。
DT本身不自带多语言切换功能,但是强大的DT可以切换默认语言和默认模板的。
首先登陆后台
系统设置中-》网站设置-》SEO优化-》网站生成html-》关闭
这样在切换模板的时候就不用手动在后台生成页面了。
思路是利用默认模板和默认语言的切换,调用后台底层的php文件,动态生成多语言的页面。
下面开始傻瓜式的教程:
在根目录下找到:
【lang】--》找到【zh-cn】--复制【zh-cn】并改名为【en】--》将【en】里面文件的中文全部翻译成英文的(各种词典各种查啊!!!)
第二步:
根目录--》找到【template】(就是放模板的文件夹)--》将【default】复制一份并改名为【English】
这样就有两套模板了,你可以去后台系统设置--》网站设置中看一下【默认语言】和【默认模板】两个下拉列表是否出现了【en】和【English】选项,有请往下看,若没有请回到本文头部睁大你的眼珠子再跟着我做一遍!!!!!!
ok!恭喜你来到了这里。
原理就是把后台的选择语言这个功能搬到前台去
首先在前台写一个a标记
<a href=" {DT_STATIC}changelang.php?language=en&template=english">切换为英文版</a>
然后在根目录下新建php文件,直接复制我这段话进去就ok了!!!!
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
|
<?phprequire 'common.inc.php';if ($_GET) { $language = isset($_GET['language']) ? $_GET['language'] : ''; $template = isset($_GET["template"]) ? $_GET["template"] : ''; if ($language != '' && $template != '') { $config=array("language"=>$language,"template"=>$template); $CFG["language"] = $language; $CFG["template"] = $template; if(!is_write(DT_ROOT.'/config.inc.php')) msg('根目录config.inc.php无法写入,请设置可写权限'); $tmp = file_get(DT_ROOT.'/config.inc.php'); foreach($config as $k=>$v) { $tmp = preg_replace("/[$]CFG\['$k'\]\s*\=\s*[\"'].*?[\"']/is", "\$CFG['$k'] = '$v'", $tmp); } file_put(DT_ROOT.'/config.inc.php', $tmp); tohtml('index'); }}header("location:".DT_STATIC); |
这样就可以实现中英文切换了!!!!
但是!!!!这样子有个致命的缺陷!!!!!!!
那就是你后台录入信息的语言不会随着更改语言而更改,加入录入商品信息是中文的,你切换到英文版,商品信息还是中文的。
那么就会有小伙伴问我了,那怎么才能做到录入的信息也是英文的呢??
没有办法我的小伙伴!!
说没有办法那是假的!
申请两个域名啊,两套系统啊,搞起来啊~~~录入两次啊
DESTOON做中英双语言(多语言)切换版本具体详解的更多相关文章
- 【原创】DESTOON做中英双语言(多语言)切换版本具体详解
第一次发原创好激动,该注意点什么? 在开发过程中用户有许多要求,比如这个多语言切换就是一个需求. 首先讲解一下DESTOON(DT)后台系统如何做这个中英.甚至多语言切换的这个功能. DT本身不自带多 ...
- [英国][记录][战争中的世界:二战全史(26集)][BD-MKV/58G][中英双字][经典收藏]
[英国][记录][战争中的世界:二战全史(26集)][BD-MKV/58G][中英双字][经典收藏] 原片名:The World at War 中文名:战争中的世界 导 演:Ted Childs, ...
- Go语言的GOPATH与工作目录详解
这篇文章主要介绍了Go语言的GOPATH与工作目录详解,本文详细讲解了GOPATH设置.应用目录结构.编译应用等内容,需要的朋友可以参考下 GOPATH设置 go 命令依赖一个重要的环境变量:$GOP ...
- 【转载】C语言itoa()函数和atoi()函数详解(整数转字符C实现)
本文转自: C语言itoa()函数和atoi()函数详解(整数转字符C实现) 介绍 C语言提供了几个标准库函数,可以将任意类型(整型.长整型.浮点型等)的数字转换为字符串. int/float to ...
- [转帖]rename(Perl语言版本) 详解
rename(Perl语言版本) 详解 2019-03-19 22:51:23 wayne17 阅读数 464更多 分类专栏: Ubuntu之路 版权声明:本文为博主原创文章,遵循CC 4.0 B ...
- yum(Fedora和RedHat以及SUSE中的Shell前端软件包管理器)命令详解
yum官方网站:http://yum.baseurl.org/ Fedora对于yum的介绍:http://fedoraproject.org/wiki/Yum yum(全称为 Yellow dog ...
- java使用POI操作XWPFDocument中的XWPFRun(文本)对象的属性详解
java使用POI操作XWPFDocument中的XWPFRun(文本)对象的属性详解 我用的是office word 2016版 XWPFRun是XWPFDocument中的一段文本对象(就是一段文 ...
- Java中JSON字符串与java对象的互换实例详解
这篇文章主要介绍了在java中,JSON字符串与java对象的相互转换实例详解,非常不错,具有参考借鉴价值,需要的朋友可以参考下 在开发过程中,经常需要和别的系统交换数据,数据交换的格式有XML.JS ...
- [转]js中几种实用的跨域方法原理详解
转自:js中几种实用的跨域方法原理详解 - 无双 - 博客园 // // 这里说的js跨域是指通过js在不同的域之间进行数据传输或通信,比如用ajax向一个不同的域请求数据,或者通过js获取页面中不同 ...
- Nginx服务器中配置非80端口的端口转发方法详解
这篇文章主要介绍了Nginx服务器中配置非80端口的端口转发方法详解,文中使用到了Nginx中的proxy_pass配置项,需要的朋友可以参考下 nginx可以很方便的配置成反向代理服务器: 1 2 ...
随机推荐
- 实时光线追踪(3)Ray Casting
目录 硬件光追(Hardware Ray Tracing) 加速结构(Acceleration Structure,AS) AS 策略 Ray Tracing Pipeline Ray Generat ...
- Jconsole 开启远程连接遇到的一些坑
最近在学习 JVM,其中涉及到性能.内存等指标分析需要使用工具分享,Java 提供了几个可视化工具来监控和管理 Java 应用,比如 Jconsole.JVisual.JMC,他们以图形化的界面实时的 ...
- 前端vue单个文件上传支持图片,压缩包以及文件 , 下载完整代码请访问uni-app插件市场址:https://ext.dcloud.net.cn/plugin?id=13066
前端vue单个文件上传支持图片,压缩包以及文件 , 下载完整代码请访问uni-app插件市场址:https://ext.dcloud.net.cn/plugin?id=13066 效果图如下: 使用方 ...
- oracle 19c rpm 个性化配置安装
简单来说就是: 1.安装preinstall : oracle-database-preinstall-19c-1.0-1.el7.x86_64.rpm 2.安装 ee : oracl ...
- 手撕HashMap(一)
HashMap基本了解 1. jdk1.7之前,HashMap底层只是数组和链表 2. jdk1.8之后,HashMap底层数据结构当链表长度超过8时,会转为红黑树 3. HashMap利用空间换时间 ...
- ERP查询Q报表开发代码
一,按照一般ERP开发流程可参考ERP开发流程,直到下载程序. 当我们的查询页签存在栏位需要判断或者特殊处理时,在global中的自定义模组变数下添加,例如: 1 #add-point:自定義模組變數 ...
- SRS之StateThreads学习
最近在看SRS的源码.SRS是基于协程开发的,底层使用了StateThreads.所以为了充分的理解SRS源码,需要先学习一下StateThreads.这里对StateThreads的学习做了一些总结 ...
- 教师节专题:AI互动课来了,即构方案助推在线教育创新升级
打开热门综艺,乘风破浪的姐姐们告诉你"用瓜瓜龙英语给孩子启蒙":走出家门,电梯口.公交站的大幅广告跟你说"2-8岁上斑马". 如果说去年的AI互动课还是浮于媒体 ...
- CMOS信噪比与感光面积的关系
前言 一般情况下,相同分辨率的sensor,如果感光面积越大,则其单位像素的感光面积也越大,成像质量也会越好.即相同分辨率品质相当的sensor,2/3"的传感器成像质量一般情况就要优于1/ ...
- typedef和define有什么区别
typedef 和define 都是替一个对象取一个别名,以此增强程序的可读性,区别如下: 使用不用 define 定义后面不用加分号,并且它的别名在对象的前面 typedef需要加分号,并且它的别名 ...