CiviCRM用户请求的一个功能是能够继承托管给定CiviCRM实例的CMS中选择的语言——我很高兴地报告,CiviCRM刚刚获得了这个功能(针对Joomla!托管的CiviCRM安装)。
在内部,CiviCRM标准化为常见的xx_YY语言环境缩写,其中小写的xx部分表示给定语言的ISO代码,而大写的YY部分表示该语言方言所在国家的ISO代码。因此,我们的默认en_US表示美式英语,而en_GB表示英式英语;同样,pt_PT是葡萄牙语,而pt_BR是“在巴西使用的葡萄牙语”,即巴西葡萄牙语。我的母语的例子更简单——pl_PL技术上是“在波兰使用的波兰语”(但我们没有其他“官方”波兰方言)。
在研究Joomla!如何存储其语言设置时,我很高兴地发现,由JFactory::getConfig()返回的配置单例可以很好地要求getValue('config.language')——剩下的就是将-替换为_(因为Joomla!以xx-YY格式保存语言环境)。
因此,现在在CiviCRM中继承CMS的语言是可能的——同时仍然保持用户如果愿意,可以坚持使用自己选择的CiviCRM语言的能力。:)