简单的回答是使用位置wp-content/languages/woocommerce/
存储自定义翻译。
看见WooCommerce documentation.
此位置应该不会受到所有WordPress更新的影响。不会修改与语言/插件和语言/主题并行的文件夹。
关于您的具体问题:
是否有办法确保整个wp内容/语言文件夹的更新安全?
你可以控制automatic 翻译更新auto_update_translation 滤器e、 g。
add_filter( \'auto_update_translation\', \'__return_false\' );
但是,此挂钩在执行以下操作时不会开火
manual wp管理员更新。这只会在进行自动更新时保护文件夹,并会停止所有其他从翻译更新中受益的插件。
是否有办法将其添加到子主题或其他内容中,以确保自定义翻译的更新安全?
将插件的翻译添加到子主题中表明,WordPress通常会在您的主题中搜索其他插件本地化。It won\'t.
但是,可以使用过滤器更改加载的MO文件路径。下面是一个非常简单的示例:
function filter_load_textdomain_mofile( $mopath, $domain ){
if( \'woocommerce\' === $domain ){
$mopath = str_replace(\'/languages/plugins/\',\'/languages/other/\',$mopath);
}
return $mopath;
}
add_filter(\'load_textdomain_mofile\',\'filter_load_textdomain_mofile\',999,2);
您可以使用此筛选器执行各种操作,例如将翻译合并在一起等。。如果您需要对另一个没有提供替代安全位置的插件执行此操作,您可能会发现这很有用。