我即将开始开发Joomla 3多语言组件,但我有一个问题,以便我应该了解即将到来的挑战
问题:让我们假设,Joomla CMS仅安装了en-US和fr-FR语言。现在,如果我尝试安装仅在es-ES和pt-BR语言中可用的组件,那么Joomla CMS将如何对组件做出反应?
组件将无法安装
组件将安装(或安装有错误),即使在Joomla CMS中未安装es-ES语言,它也将使用该特定组件的可用语言文件以es-ES语言显示
< / LI>默认情况下,会显示传递给JText :: _()函数的值(例如COM_COMPOENENT_NAME_STRING)
如果以上都没有,那么我可以输出什么?
答案 0 :(得分:0)
我相信你可以使用以下方法测试:
通常,Joomla中的此语言处理仅影响组件的管理界面和前端样式/标题,而不影响您添加到组件的内容。翻译组件的前端输出通常不是一项非常大的工作。如果你还需要翻译所有管理员语言文件,那么还有一点,但这也是一个可行的工作,在中等大小的组件上很少需要几个小时。
答案 1 :(得分:0)
我认为您描述的场景不太可能,因为大多数组件至少会使用英语,如果这是您的主要语言,它将显示该语言。但为了论证,让我们来看看它。
首先,我们必须定义您的主要源语言。让我们说这个例子有效是西班牙语。我们假设你在Joomla安装了西班牙语,英语和法语。 Joomla用英语发货,但你可以取消发布。
如果你安装了一个正确开发但没有法语语言文件但是有一个西班牙语语言文件的组件你会看到正确的西班牙语和法语你会看到COM_COMPOENENT_NAME_STRING。仅通过创建适当的语言文件将语言文件翻译成法语就相对简单了。
如果您这样做,请考虑将其发送给组件开发人员,以便他们可以将其包含在将来的版本中。
以上仅适用于存储在语言文件中的语言字符串。如果组件在数据库中存储任何数据,则需要专门为多语言使用而开发(大多数不是),或者您需要使用翻译组件,例如http://www.neno-translate.com
如果您使用Neno,它将显示任何字符串(文件或数据库)的源语言,直到它被翻译。
注意:我在www.neno-translate.com工作,我正在宣布我的联盟,因为它是Stackoverflow所要求的,但我还想澄清它是唯一可以翻译任何第三方组件的解决方案它是有效的。它也是免费和开源的!