是否可以取消在Wordpress前端加载所有css文件的队列,但保持后端正常加载css



基本上,我试图只加载网站正在使用的css规则,希望有一个选项可以从加载中删除所有前端css,而不是从网站上实际使用的所有插件中删除一个包含所有css的文件。我希望减少超过半MB的css没有在一个网站上使用。

认为必须有一种方法来unenqueue所有在wordpress前端排队的样式,并替换为1个缩小的css文件。

有什么想法吗?希望css在后台管理区域正常加载。

老实说,我知道这听起来像个疯子。比如,为什么要有CMS呢?嗯,有些事情可能需要更改,而不是重新编译网站上所有使用过的css。这实际上只是一个想法,让移动设备的网站速度尽可能快,css明智。并且比最终缓存和CDN这个css文件更快的性能。

要从站点前端将所有css文件出列,可以使用以下代码:

function my_prefix_remove_all_styles() {
if ( is_admin() ) {
return; // Return if the request is for an administrative interface page
}
global $wp_styles;
$wp_styles->queue = array();
}
add_action( 'wp_print_styles', 'my_prefix_remove_all_styles', 100 );

请注意,上面的代码不适用于内联样式,但它将通过wp_enqueue_scripts挂钩将所有在WordPress中正确排队的样式排成队列。然后,你可以自己将样式组合在一个大的css文件中并缩小它。

如果你可以使用插件进行静态资源优化,我可以建议你使用WP Fastest Cache。它可以自动进行缩小、串联和文件缓存。您还可以从缓存/缩小中排除特定文件。

最新更新