我正在为我的插件创建翻译 要从my-plugin / languages目录中获取 .mo 文件,我使用函数
ABSPATH.'/wp-content/languages'
如何将位置设置为 wp-content / languages
将位置设置为{{1}}不起作用。
答案 0 :(得分:1)
我知道您已经接受了自己的答案,但它会对WordPress标准起作用。
load_plugin_textdomain
将从全局语言目录加载而不进行修改,应该用于引导插件转换。您指定为第三个参数的路径是后备,以便在未安装全局语言文件时使用。
为了阐明它是如何工作的:WordPress将严格在<WP_LANG_DIR>/plugins/my-plugin-<locale>.mo
查看全局语言目录。因此,只要您的文本域和区域设置代码正确,就会加载它。
如果找不到,WordPress会查看您指定的路径,该路径必须相对到wp-content/plugins
目录。
历史上(在WP 4.6之前),第一个参数首先加载,但WordPress决定交换订单,支持社区翻译(全局安装)而不是作者提供的翻译(随插件一起提供)。
答案 1 :(得分:0)
如果有其他人正在寻找anwser,那么它就是
function load_txtdomain() {
$locale = apply_filters( 'plugin_locale', get_locale(), 'my-plugin' );
load_textdomain( 'my-plugin', WP_LANG_DIR . '/my-plugin-' . $locale . '.mo' );
}
add_action('plugins_loaded','load_txtdomain');