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了!!!!
<?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);
这样就可以实现中英文切换了!!!!