WordPresas - 将字符串翻译添加到现有的 .po

WordPresas - Add string translations to an existing .po

我使用的是部分意大利语翻译的主题。使用编辑器,我添加了新行并使用 Poedit 生成了 .mo。 我怀疑什么时候下载更新,什么时候我的翻译可能会被覆盖。

有没有办法避免重新同步新的翻译(代码在 _e() 函数中使用域)?

您可以将“自定义”.po 和 .mo 文件放入 /wp-content/languages/plugins,它将覆盖插件的原始 .po .mo 文件。因此,即使您更新了插件,您的自定义翻译文件也会被使用。

例如,如果您将 Akismet 插件翻译成意大利语,您在 /wp-content/languages/plugins 中的文件将是

akismet-it_IT.mo
akismet-it_IT.po

编辑:

或者,您可以将此代码添加到子主题的 functions.php 中以进行字符串翻译。您可以尽可能多地附加此代码来翻译单词。作为示例,我在最后添加了两行(hello2 和 hello3)。

// Translate Text
add_filter('gettext', 'translate_text'); 
add_filter('ngettext', 'translate_text');

function translate_text($translated) { 
$translated = str_ireplace('Hello', 'Ciao', $translated); 
$translated = str_ireplace('Hello2', 'Ciao2', $translated); 
$translated = str_ireplace('Hello3', 'Ciao3', $translated);  

return $translated; 
}