给WordPress主题设置单独的语言包(即本地化/国际化)只需按以下步骤操作:
第一步:让主题支持语言包
在主题根目录下的functions.php中添加如下代码,告诉WordPress去哪里找语言文件:
add_action('after_setup_theme', 'my_theme_setup');
function my_theme_setup() {
load_theme_textdomain('my_theme', get_template_directory() . '/languages');
}
my_theme是主题的文本域(textdomain),必须唯一。
/languages是你将要放.po和.mo文件的文件夹路径。
第二步:准备语言包文件
创建文件夹:在主题目录下新建languages/文件夹。
命名规则:语言包文件名必须符合标准格式,如:
简体中文:zh_CN.po/zh_CN.mo
英文(美国):en_US.po/en_US.mo
你可以:
手动创建:用Poedit工具扫描主题中的__()和_e()函数,生成.po文件并翻译。
下载现成语言包:从主题官网或translate.wordpress.org下载对应语言包。
第三步:上传语言包
将.po和.mo文件上传到:
wp-content/themes/你的主题/languages/
第四步:设置网站语言
登录WordPress后台:
设置>常规>站点语言,选择你上传的语言(如简体中文)。
保存后,WordPress会自动加载对应的.mo文件。
可选:使用插件辅助
如果你不想手动管理.po/.mo文件,可以使用插件如:
LocoTranslate:可视化管理语言包。
WPML/Polylang:适合多语言站点,支持主题和插件翻译。
示例:主题中如何写可翻译文本
_e('Welcome to our site', 'my_theme');
或
$welcome = __('Welcome to our site', 'my_theme');
注意事项
如果你使用的是子主题,请将语言包放在子主题的languages/目录,并在functions.php中修改路径为:
load_theme_textdomain('my_theme', get_stylesheet_directory() . '/languages');
确保.mo文件存在,否则翻译不会生效。
完成以上步骤后,你的WordPress主题就能根据网站语言自动加载对应的翻译内容了。