ecshop中关于语言配置项的管理

ecshop 是一个希望面向世界的开源商城系统,所以语言包的设置就是必不可少了的,所以现在的ecshop提供了3个语言包,分别是繁体,简体和英文。这些语言包文件默认是放在根目录languages下面的。


下面说下这里的语言包是如何加载的,以方便二次开发的过程中,修改默认的配置项。

ecshop基本上后台的文件都有

require(dirname(__FILE__) . '/includes/init.php');

这个引入。

这个init.php文件的作用,可以参考 ecshop 工作流程加载配置介绍 这里的介绍。

在这个文件中,$smarty->assign('lang', $_LANG);

这个就是对语言包中的数据赋给变量lang,这样前台就可以调用了。说一下,语言包中的配置都是通过数组来给出的,

这样如果后台调用的时候,直接引入语言包文件,就可以使用了,举个例子,后台文件通过引入languagesen_uscommon.php这个文件,我们就可以使用里面的数组$_LANG['user_center']来得到user_center的语言配置了,因为init.php里面默认引入了require(ROOT_PATH . 'languages/' . $_CFG['lang'] . '/common.php');


所以language里面的common.php的配置数组是可以任何加载了init.php文件中使用的。

如果想使用其他的文件,使用的时候就需要引入了引入了。

比如,flow.php这个订单处理流程的文件中需要购物流程的配置文件,那么我们就应该引入
languagesen_usshopping_flow.php这个文件在flow.php中。


下面说下对这些文件的修改,默认只要在languages直接的目录下的文件都是可以通过后台修改的,这样给客户自己修改提供了方便,而且为了安全和方便,后台使用过search来搜索后来修改的,这样定位快,简单方便了用户的使用。




原文地址:https://www.cnblogs.com/itdreamfly/p/12871630.html