You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

WordPress插件英转法翻译失效,故障原因排查

WordPress插件翻译不生效问题排查

我正在开发一款新插件,已经用POedit生成了PO和MO文件,也严格按照WordPress官方国际化文档的所有步骤操作——包括在主插件文件里编写规范的文件头、添加加载文本域与MO文件的PHP代码。但把站点语言从英文切换为法语后,插件仍显示英文字符串。想请教:

  • 可能的问题原因是什么?
  • 是否因为插件尚未上架wordpress.org导致的?

我的本地环境配置:

  • 本地服务器:wampserver
  • 操作系统:Windows 10
  • PHP版本:8.1

主插件文件中加载PO和MO文件的代码如下:

/**
 * wpdocs_load_textdomain() loads Text Domain for the translation
 */
function wpdocs_load_textdomain() {
    load_plugin_textdomain( 'str-sticky-header', false, dirname( plugin_basename( __FILE__ ) ) . '/lang' ); 
}


/**
 * my_plugin_load_my_own_textdomain( $mofile, $domain )  loads the MO file for the translation
 * @param $mofile
 * @param $domain
 */
function my_plugin_load_my_own_textdomain( $mofile, $domain ) {
    if ( 'str-sticky-header' === $domain && false !== strpos( $mofile, WP_LANG_DIR . '/plugins/' ) ) {
        $locale = apply_filters( 'plugin_locale', determine_locale(), $domain );
        $mofile = WP_PLUGIN_DIR . '/' . dirname( plugin_basename( __FILE__ ) ) . '/lang/' . $domain . '-' . $locale . '.mo';
    }
    die($mofile);
    return $mofile;
}

add_action( 'init', 'wpdocs_load_textdomain' );
add_filter( 'load_textdomain_mofile', 'my_plugin_load_my_own_textdomain', 10, 2 );

另外,die($mofile)已经输出了正确的MO文件路径,会不会是翻译内容本身存在问题?

内容的提问来源于stack exchange,提问作者Sam94

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.23 10:18:21