Manfaat Utama:
gulp-sass
gulp-autoprefixer
maklum balas masa nyata & pengendalian ralat yang mantap: gulp-rtlcss
fungsi menonton Gulp menyediakan kemas kini masa nyata. gulp-plumber
Mengapa mengautomasikan? Automasi aliran kerja anda menawarkan kelebihan yang signifikan:
menghapuskan tugas berulang:
Gantikan kerja -kerja mundan dengan alat yang disesuaikan.WordPress (dipasang secara tempatan)
node.js dan npm (dipasang)Gulp adalah pelari tugas JavaScript yang mengautomasikan tugas masa yang memakan masa seperti pemampatan CSS, kompilasi SASS, pengoptimuman imej, dan penyemak imbas. Ia mencetuskan tindakan berdasarkan peristiwa:
fail sass simpan pencetus kompilasi sass dan output css minified.Penambahan imej baru mencetuskan pengoptimuman dan penempatan semula ke folder khusus.
Pemasangan Global:
Sahkan pemasangan dengan . Anda mesti melihat versi Teluk.
npm install gulp -g
Persediaan tema (menggunakan garis bawah): gulp -v
muat turun garis bawah dari garis bawah.me, buat tema (mis., "Gulp-wordpress"), letakkan di direktori tema WordPress anda, dan aktifkannya.
Pemasangan Gulp Tempatan: Navigasi ke direktori tema anda menggunakan baris perintah (mis.,
). Inisialisasi NPM:npm install gulp -g
Ikuti arahan untuk membuat package.json
. Kemudian pasang Gulp secara tempatan:
npm init
ES6 Sokongan Janji: Pasang polyfill: es6-promise
npm install gulp --save-dev
Buat : gulpfile.js
Buat fail kosong dalam direktori akar tema anda. gulpfile.js
Mempercepat pembangunan dengan tugas -tugas Gulp
aliran kerja CSS (sass):
Pasang plugin:
npm install es6-promise --save-dev
Direktori CREATE : sass
Buat direktori dengan fail sass
anda (termasuk tajuk WordPress Stylesheet dan jadual kandungan).
style.scss
(tugas sass): tugas ini menyusun sass, menambah awalan vendor, dan secara opsyen menghasilkan stylesheets RTL. gulpfile.js
npm install gulp-sass gulp-autoprefixer gulp-rtlcss gulp-rename --save-dev
tambahkan tugas menonton untuk menjalankan semula tugas
secara automatik apabila fail sass berubah:
sass
require('es6-promise').polyfill(); const gulp = require('gulp'); const sass = require('gulp-sass'); const autoprefixer = require('gulp-autoprefixer'); const rtlcss = require('gulp-rtlcss'); const rename = require('gulp-rename'); gulp.task('sass', () => { return gulp.src('./sass/*.scss') .pipe(sass()) .pipe(autoprefixer()) .pipe(gulp.dest('./')) .pipe(rtlcss()) .pipe(rename({ basename: 'rtl' })) .pipe(gulp.dest('./')); });
: gulp-plumber
Pasang
untuk pengendalian ralat yang lebih baik: gulp-plumber
gulp-util
gulp.task('watch', () => { gulp.watch('./sass/**/*.scss', gulp.parallel('sass')); }); gulp.task('default', gulp.parallel('sass', 'watch'));
sass
npm install gulp-plumber gulp-util --save-dev
const plumber = require('gulp-plumber'); const gutil = require('gulp-util'); const onError = (err) => { console.error('An error occurred:', gutil.colors.magenta(err.message)); gutil.beep(); this.emit('end'); }; gulp.task('sass', () => { return gulp.src('./sass/*.scss') .pipe(plumber({ errorHandler: onError })) .pipe(sass()) // ... rest of your sass task });
: Buat fail .jshintrc
di akar tema anda untuk mengkonfigurasi jshint.
.jshintrc
(JS Tugas): Tugas ini menyusun, lints, dan meminimumkan fail JavaScript. gulpfile.js
npm install gulp-concat gulp-jshint gulp-uglify --save-dev
anda. app.min.js
functions.php
const concat = require('gulp-concat'); const jshint = require('gulp-jshint'); const uglify = require('gulp-uglify'); gulp.task('js', () => { return gulp.src('./js/*.js') .pipe(jshint()) .pipe(jshint.reporter('default')) .pipe(concat('app.js')) .pipe(rename({ suffix: '.min' })) .pipe(uglify()) .pipe(gulp.dest('./js')); });
folder.
/images/src
/images/dist
gulpfile.js
Kemas kini tugas dan
npm install gulp-imagemin --save-dev
watch
default
images
Pasang Plugin:
(Integrasi BrowserSync):
const imagemin = require('gulp-imagemin'); gulp.task('images', () => { return gulp.src('./images/src/*') .pipe(plumber({ errorHandler: onError })) .pipe(imagemin({ optimizationLevel: 7, progressive: true })) .pipe(gulp.dest('./images/dist')); });
gulpfile.js
ingat untuk menggantikan dengan url pembangunan WordPress tempatan anda.
npm install browser-sync --save-dev
Atas ialah kandungan terperinci Automasi Tema WordPress dengan Gulp. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!