本地化一个ownCloud主题

是否有可能在ownCloud中本地化由自定义主题覆盖的文件?

根据bugtracker中的这个问题,您可以通过将它们放在自己的主题文件夹中并对其进行编辑来覆盖主题文件。 在电子邮件模板的情况下,当您与某人共享某个文件时会发送这个电子邮件,如下所示:

print_unescaped($l->t("Hey there,\n\njust letting you know that %s shared %s with you.\nView it: %s\n\n", array($_['user_displayname'], $_['filename'], $_['link']))); 

这依赖于本地化function,所以当我改变这个文本时,它只会以英文显示,因为新文本在语言文件中不可用。

我在<owncloud>/core/l10n/de_DE.phpfind了本地化文件,如下所示:

 $TRANSLATIONS = array( "%s shared »%s« with you" => "%s hat »%s« mit Ihnen geteilt", "Couldn't send mail to following users: %s " => "An folgende Benutzer konnte keine E-Mail gesendet werden: %s", // ... ); 

我假设我可以将这个文件复制到我的主题目录,并添加我的翻译为新的文本,但这样我将失去原来的本地化文件的未来更改。

我想要的是可以追加(并理想覆盖)到我的主题目录$TRANSLATIONS数组的条目。

有关主题的官方文档不是最新的(看起来它是从以前的版本复制,而不适应变化),并没有涵盖本地化。 有关翻译的文档也没有帮助。

随着ownCloud 7的发布,您可以通过pipe理控制面板编辑电子邮件模板。 关于在这个链接上文本的本地化,很好的解释了如何生成新的语言文件。

如果链接断开:使文本可以翻译在HTML或PHP包装它像这样<?php p($l->t('This is some text'));?> or this <?php print_unescaped($l->t('This is some text'));?>对于正确的date格式,使用<?php p($l->l('date', time()));?> 。 通过编辑/core/l10n/l10n-[lang].php来改变显示date的方式在javascript中翻译文本使用: t('appname','text to translate');