WordPress 如何使用 UTF-8 字符集

现在网站的字符集已经默认使用 UTF-8,WordPress 也是,原来我们可以在 WordPress 后台设置网站的编码模式,但是 WordPress 从 3.5.1 版本开始,取消了后台这个设置,现在只能默认为 UTF-8 字符集。

但是 WordPress 还保留这个 blog_charset 这个选项,在安装的时候,默认把 UTF-8 写入 options 表中,然后网站前端通过方法 get_option('blog_charset') 获取。

但是由于历史遗留问题,WordPress 使用这个方法在获取字符集的时候,还使用两个 filter 进行过滤:


add_filter('option_blog_charset',      '_wp_specialchars');
add_filter('option_blog_charset',      '_canonical_charset');

_wp_specialchars 函数是是将一些特殊的字符转成 HTML 实体

_canonical_charset则把获取字符集转成统一的名称,UTF-8 或者 ISO-8859-1

如果我们 WordPress 网站的字符集已经确定就是 UTF-8,没有必要使用这两个函数过滤,通过下面这段代码直接返回就好:


add_filter('pre_option_blog_charset',function (){
	return 'UTF-8';
});

热门文章