语言翻译中的问题

时间:2012-02-14 作者:Stephen

我使用的主题支持langauge设置。我已将WP Config中的设置更改为:

define(\'WPLANG\', \'es_ES\');
我使用的主题没有提供es\\es。采购订单或es\\U es。mo文件,所以我创建了自己的es\\U。po和es\\U es。es的生产任务单。wordpress。org(在我下载了西班牙语版本之后)。

翻译正在进行中,但没有提取我在es\\es中指定的条目。采购订单,例如:

#. Text in function
#: daydream/comments.php:78
msgid "Be nice!"
msgstr "Escribe!"
这仍然显示在我的网站上的英文。

更新只是为了澄清一些事情,我实际上并没有编辑核心语言文件,主题有自己的语言文件夹,这是我创建es\\es的地方。mo和es\\U es。采购订单。

任何帮助都将不胜感激。

你好Stephen

1 个回复
SO网友:Stephen Harris

您不应该编辑核心翻译文件来翻译插件或主题。下面是插件和主题翻译的简要介绍。。。。

当主题或插件希望允许翻译某些文本时,它会将其包装在一个函数中,如

__(\'This text can be translated\',\'my-theme-or-plugin\');

Translation functions

首先,里面只有文字such functions 将能够被翻译,因为WordPress识别的这些文本可以被翻译。因此,首先必须检查主题代码中是否存在以下内容:

__(\'Be nice!\',\'my-theme-or-plugin\');

Translation domains

其次,注意my-theme-or-plugin. 这是主题(或插件)的域。它必须注册到某个位置(主题文件夹内)。这就是WordPress要翻译字符串的地方。如果为空,则将使用wp目录的语言目录中(添加时)的核心翻译文件(如es\\u es.mo)。主题should have their own domain 并且不依赖核心翻译文件(至少对于那些文件中没有出现的字符串)。

这意味着,如果您翻译插件或主题,您需要了解它们的域(例如。my-theme-or-plugin) 然后将采购订单/生产任务单文件保存为:

my-theme-or-plugin-{language extension}.mo/.po
例如:my-theme-or-plugin-es_ES.momy-theme-or-plugin-es_ES.po. 这些必须放在主题/插件注册区域。

简而言之,要翻译主题/插件,您需要知道:

它是域(请参见Codex)

  • 采购订单/生产任务单文件的存放位置
    1. 您不需要编辑“核心”语言文件:例如:。es_ES.po/es_ES.mo

      通常插件和主题将提供翻译模板文件(有时是POT),这是插件/主题允许翻译的字符串列表。您可以使用此创建my-theme-or-plugin-es_ES.mo/.po 文件并将其保存在适当的位置。

      You will have to contact the theme/plug-in author directly for the above information.

    结束

    相关推荐

    Custom metabox translation

    我已经创建了一个自定义的帖子类型,并添加了一些自定义的元数据库,现在我想知道我在我的网站上使用了什么样的翻译插件?我对它们都没有经验,所以我不知道谁会支持我的自定义元数据库,谁不会。