繁体简体转换,出现问题,有能力的人来看看

2016-07-07 16:48 来源:www.chinab4c.com 作者:ecshop专家

自己根据某人发的教程修改了代码,本人用的是2.2UTF8简体,增加繁体转换。在简体的情况下一切顺利,但在繁体的情况下,点入用户中心,注册,登录,店铺页面,就出现一下代码,不知道是怎么回事,望高人指点下。

Lang::include(/includes/passports/uc/tc-utf-8/common.lang.php) [function.Lang-include]: failed to open stream: No such file or directory Error File: /eccore/ecmall.php at 219 line.


本人修改的教程如下

ECMALL 多語言切換 修改方法
下面就繁简切换做一个实例。其他的语言可以类似这样做。前提是ECMall版本和语言包的编码都选择UTF-8


第一步:两个模板需要加链接
模板:themes\mall\default\header.html
在代码<a href=』{url app=article&code=$acc_help}』>{$lang.help_center}</a>下面添加
| <a href=』javascript:changeLang(’tc-utf-8′)』>{$lang.tc}</a> <a href=』javascript:changeLang(’sc-utf-8′)』>{$lang.sc}</a>

模板:themes\mall\default\member.header.html
在<a href=』{url app=article&code=$acc_help}』>{$lang.help_center}</a>下面添加
| <a href=』javascript:changeLang(’tc-utf-8′)』>{$lang.tc}</a> <a href=』javascript:changeLang(’sc-utf-8′)』>{$lang.sc}</a>

第二步:语言包处理
如果你装的是sc-utf-8的版本。那你需要从tc-utf-8的版本中把languages/下的tc-utf-8目录剥离出来,放到你的站点languages/下
然后分别在languages/tc-utf-8/common.lang.php 和 languages/sc-utf-8/common.lang.php 文件中添加语言项
即在’username’=>’用户名’,前面添加两行代码
’sc’=>’简体,
‘tc’=>’繁体’,

第三步:添加JS函数设置cookie
在includes\libraries\javascript\ecmall.js文件末尾添加函数
function changeLang(lang)
{
$.setCookie(’lang’, lang);
window.location.reload();
}

第四步:读取cookie设置需要读取的语言包
在文件ecmall2.0\eccore\ecmall.php中找到define(strtoupper($key), $value);
替换成
if (ecm_getcookie(’lang’) && strtoupper($key) == ‘LANG’)
{
define(strtoupper($key), ecm_getcookie(’lang’));
}
else
{
define(strtoupper($key), $value);
}

OK完成

回答:
这种方法倒是没用过。用JS在当前地址中加入语言参数,然后刷新,在PHP设置、判断cookie,然后读取语言包。这种方法没有问题!