WordPress 是一个多语言的内容管理系统,有完善的多语言发开 API 。在开发多语言的主题或插件时,只需要使用语言包即可实现语言本地化。

但是,在实际开发中,只有语言包可能无法保证 100% 的兼容。因为语种、字体的不同,可能需要给某些语言单独添加 CSS 样式。

给不同的语言添加不同的样式只需要把下边的代码放到主题的 functions.php(了解更多) 或者插件之中:

/**

    *WordPress 为不同的语言添加不同的样式

    *https://www.weixiaoduo.com/body-class-locale-language/

*/

functionBing_body_class_add_locale($classes){

    $classes[]='locale-'.sanitize_html_class(get_locale());

    return$classes;

}

add_filter('body_class','Bing_body_class_add_locale');

这样,body 标签就会在不同的语种出现不同的 Class 类。比如简体中文就会有 「locale-zh_CN」 、美式英语就会有 「locale-en_US」 。

这样,利用这个 Class 类,就可以给不同的语种添加不同的样式,比如下边的 CSS 代码,为简体中文单独设置了字体:

body.locale-zh_CN {

    font-family:'Hiragino Sans GB','Microsoft Yahei','宋体',Helvetica,Arial,Sans-serif;

}