问题描述
所以在英语中我们没有性别名词。它始终是”a table” 或”a desk”,无需担心它是”une table” 或”un tableau”(法语) 。所以我的问题是,在使用法语.mo 文件时,如何翻译一个字符串,如:
您可以在子主题中包含%s
因为”a” 取决于%s 是什么?
最佳解决方案
如果每个字符串都获得自己的翻译模板,这不是问题。
如果您使用字符串 You can include a %s in a childtheme.
多于一个不同的名词不可翻译。
一个例子,从 recent article:New %s
是德语 (是的,我们有性别的名词)…
-
Neues Buch(一本书,中性)
-
诺伊尔电影 (为电影,阳刚)
所以你必须写 New book
和 New movie
或 You can include a logo in a child theme.
和 You can include a stylesheet in a child theme.
。
边注
这就是为什么翻译文件占用了很多内存的原因之一:你必须要 「repeat」 很多非常相似的字符串。虽然英文 WordPress 安装可能会运行 32MB PHP 内存,它将会死,如果您使用相同的德语或法语翻译。
如果您的主题或插件使用许多可翻译的字符串为 front-end 和 back-end 考虑使用两个文件:一个为 back-end 和一个单独的文件为 front-end 。
load_theme_textdomain(
'your_text_domain',
get_template_directory() . '/languages' . ( is_admin() ? '/backend' : '/frontend' )
);
WordPress 核心只是改为这个系统,以获得更好的性能。
参考文献
注:本文内容整合自 Google/Baidu/Bing 辅助翻译的英文资料结果。如果您对结果不满意,可以加入我们改善翻译效果:薇晓朵技术论坛。