使用 purgecss 删除wordpress主题中未使用的 css 来减小 css 文件体积-kb88凯时官网登录

时间:2022-01-28
阅读:
免费资源网 - https://freexyz.cn/

开发wordpress主题的时候,为了保证效果,同时加快开发速度,我们经常会使用一些 css 框架。主题开发完成后,这些 css 框架中其实有很大一部分 css 样式是没有在主题中使用的。

「删除未使用的 css」是网站前端优化中必不可少的一个步骤。如果不使用工具,我们是无法手工完成这个步骤的,太费时间不说,还容易遗漏。而目前 wordpress 还没有很方便的移除未使用的css 的工具或插件,这就导致了很多朋友做 wordpress性能优化的时候直接省略了这一步。

本文将为大家介绍怎么使用  工具来移除wordpress主题中未使用的 css 样式,以达到优化 wordpress 前端性能的目的。本文所介绍的方法是通过 gulp 来使用 purgecss 的,继续阅读之前,需要您对 有一定的了解或使用经验。

使用 purgecss 移除未使用的 css

如果您的电脑上已经安装的 nodejs,并且已经使用 npm init 命令创建了项目,使用下面的命令安装 purgecss 为项目依赖。

npm i -d gulp-purgecss

安装后,我们需要创建一个 gulp 命令配置文件 gulpfile.js,然后把以下内容加入到这个文件中。

const gulp = require('gulp')
const purgecss = require('gulp-purgecss')
gulp.task('purgecss', () => {
  return gulp
    .src('src/**/*.css')
    .pipe(
      purgecss({
        content: ['src/**/*.html']
      })
    )
    .pipe(gulp.dest('build/'))
})

创建完成后,我们需要在 gulpfile.js 的同级目录中新建一个 src 文件夹,然后把我们的网站前端文件放进去。然后运行命令。

gulp purgecss

命令执行完成后,我们会在同级目录中看到一个 build 文件夹,build 文件夹的内容就是经过 purgecss 工具处理后,移除了未使用的 css 样式的样式表文件。

对比处理前后的 css 文件,我们会发现,处理后的文件体积会减小很多。举例来说,使用 purgecss 处理后,wordpress 智库的 css 文件体积由 220k 减小到了 75 k,减小了原来体积的三分之二,如果您使用的 avada 等高级主题,这个比例估计会更大。

为 javascript 生成的 css 类设置白名单

需要注意的是,有些类是 js 生成的,下载的静态页面中没有包含这些 css 类,我们需要把这些类添加到 purgecss 白名单中,以避免被删除。添加白名单的方法如下,whitelist 是具体的 css 类,whitelistpatterns 是正则表达式匹配的 css 类,我们可以根据需要添加。

const purgecss = new purgecss({
    content: [], // content
    whitelist: ['random', 'yep', 'button']
    whitelistpatterns: [/red$/],
})

和tailwind css框架配合使用

默认情况下,purgecss无法处理tailwind css特殊的css类名,我们可以为上面的配置文件添加一个自定义extractors来处理,配置代码如下,主要是为了使用tailwindcss类中的:\字符,如 .xl\:overscroll-auto

extractors       : [
    {
        extractor : content => content.match(/[a-z0-9-:\/] /g) || [],
        extensions: ['css', 'html'],
    },
],

purgecss 无法处理 php 文件生成的动态网站,使用 purgecss 处理之前,我们需要把整个网站下载成静态的 html,然后再交给 purgecss 处理。下载 html 页面的工作我们可以使用  或  来完成。

如果你已经使用了 gulp、webpack、postcss 等工具来编译您的 wordpress 样式文件,同样可以把 purgecss 工具整合到这些工具中,来帮助您在每次升级主题时自动移除未使用的 css 文件,具体方法在这里就不多说了,需要的朋友可以参考 purge css 官方文档。

免费资源网 - https://freexyz.cn/
返回顶部
顶部
网站地图