Gallery:设计文档:全局语言整合包

来自站长百科
跳转至: 导航、​ 搜索

在开发时是如此对语言管理器进行定义的,当安装某个语言时就会下载60到100个文件,包含了个模块所需的语言整合包。这样打的下载量很容易招致下载失败,也会拖长反应时间。

有个办法是针对各语言将所有模块语言整合包重新打成一个包。

需要考虑的:

  • 中文的两种显示(zh_CN,zh_TW) ,英式英语 (en_GB)应被看作单独的语言。
  • 某种语言的所有变体都应打包在一起,这是应依赖性所需。例如,阿根廷语(es_AR)和墨西哥语 (es_MX)的变体需要的基础是(es_ES)。
  • 该方案无论何时某模块针对特定存储库被打包时都会生成所有的全局语言整合包。生成的语言整合包被置于repository/global目录下。该目录与模块和外观主题的目录是同级的。
 repository/
   released/
     global/
     modules/
     themes/
     index
  • 全局语言整合包的命名管理为'lang-xx-nnnnn.package',其中xx就是语言(如en_GB,zh_CN,zh_TW,pt,es等),而nnnnn则是在所有语言整合包中找到的最大修订次数。
  • 当索引被生成时,整合包的列表会被置于'global'数组元素之下。使用'modules'或'themes 数组元素下与整合包格式相同的格式。
 $index = array('global' => array(...),
                'modules' => array(...),
                'themes' => array(...));