如何为WordPress子主题手动创建独立文本域?
WordPress子主题创建独立文本域新手步骤
准备子主题基础文件
确保子主题有style.css和functions.php两个核心文件,没有的话手动创建。style.css开头必须包含子主题声明,重点设置唯一的Text Domain(别和主主题重复):/* Theme Name: 你的子主题名称 Theme URI: (可选) Description: 主主题的自定义子主题 Author: 你的名字 Template: 主主题文件夹名(比如twentytwentyfour) Version: 1.0.0 Text Domain: my-child-theme /* 这里设为子主题专属标识 */ */在functions.php中注册文本域
打开子主题的functions.php,添加代码注册文本域并指定翻译文件存放路径:function my_child_theme_load_textdomain() { load_child_theme_textdomain( 'my-child-theme', // 必须和style.css里的Text Domain完全一致 get_stylesheet_directory() . '/languages' // 翻译文件存在子主题的languages文件夹 ); } add_action( 'after_setup_theme', 'my_child_theme_load_textdomain' );注意:如果子主题下没有
languages文件夹,手动新建一个。替换自定义代码的文本域调用
把子主题自定义代码里所有调用主主题文本域的地方,改成子主题的文本域。比如:
原来的_e( '示例文本', 'parent-theme-domain' ),改成_e( '示例文本', 'my-child-theme' )。
所有翻译相关函数(__()、_e()、_x()等)都要做替换。用LocoTranslate管理子主题翻译
打开LocoTranslate插件:- 切换到「主题」标签,找到你的子主题(现在会显示你设置的独立文本域)
- 点击「新建语言」,选择目标语言,设置翻译文件保存到子主题的
languages目录(选「自定义」位置,指向子主题的languages文件夹) - 开始翻译你的自定义文本即可
验证生效情况
切换网站语言,检查子主题自定义文本是否显示翻译内容。如果没生效,排查:style.css和functions.php里的文本域名称是否完全一致- 翻译文件是否存放在正确目录,文件名格式是否正确(比如
zh_CN.mo和zh_CN.po) - 自定义代码里的文本域是否全部替换正确
内容的提问来源于stack exchange,提问作者Diana
相关产品推荐
相关产品推荐

