如何移除WordPress默认添加的Google字体Mulish?
移除WordPress默认加载的Mulish字体
核心原因
WordPress 5.9及以上版本会在块编辑器(Gutenberg)的全局样式中默认引入Mulish字体,这类字体引用多通过内联CSS或全局样式模块加载,普通的style_loader_src过滤器和常规插件无法拦截。
解决方案
以下是几种有效的移除方法,可按需组合使用:
1. 过滤全局样式的字体输出
将以下代码添加到主题的functions.php文件中,直接清除全局样式里的Mulish字体声明:
add_filter( 'wp_get_global_stylesheet', function( $stylesheet ) { // 移除Mulish字体的font-face规则 $stylesheet = preg_replace( '@font-face[^}]*Mulish[^}]*}@', '', $stylesheet ); return $stylesheet; } );
2. 清空编辑器的默认字体预设
阻止块编辑器加载默认字体集,避免Mulish被引入:
add_filter( 'block_editor_settings_all', function( $settings ) { if ( isset( $settings['styles']['typography']['fontFamilies'] ) ) { // 清空编辑器默认字体列表,可替换为自定义字体数组 $settings['styles']['typography']['fontFamilies'] = []; } return $settings; } );
3. 移除字体预加载资源
WordPress可能会预加载Mulish字体资源,通过以下代码取消预加载:
add_filter( 'wp_resource_hints', function( $hints, $relation_type ) { if ( 'preload' === $relation_type ) { foreach ( $hints as $key => $hint ) { if ( strpos( $hint, 'fonts.gstatic.com' ) !== false && strpos( $hint, 'Mulish' ) !== false ) { unset( $hints[$key] ); } } } return $hints; }, 10, 2 );
4. 完全禁用全局样式(极端但彻底)
如果不需要WordPress的全局样式模块,可直接禁用:
add_action( 'wp_enqueue_scripts', function() { wp_dequeue_style( 'global-styles' ); }, 20 ); add_action( 'enqueue_block_editor_assets', function() { wp_dequeue_style( 'global-styles' ); }, 20 );
验证方法
添加代码后,打开浏览器开发者工具(F12),在「网络」面板搜索Mulish或fonts.googleapis.com,确认无相关请求;同时检查页面内联CSS,确保没有包含Mulish的font-face声明。
内容的提问来源于stack exchange,提问作者Fred K
相关产品推荐
相关产品推荐

