optimieren Sie Ihre WordPress -Themenentwicklung mit der Automatisierungskraft von Gulp! Dieses Tutorial zeigt, wie Sie Gulp in Ihren Workflow integrieren, um sich wiederholende Aufgaben zu automatisieren und die Effizienz zu steigern.
Schlüsselvorteile:
gulp-sass
und gulp-autoprefixer
, um die Funktionalität zu erweitern. gulp-rtlcss
gulp-plumber
Automatisieren Ihres Workflows bietet erhebliche Vorteile:
WordPress (lokal installiert)
Gulp ist ein JavaScript-Task-Läufer, der zeitaufwändige Aufgaben wie CSS-Komprimierung, SASS-Kompilierung, Bildoptimierung und Browser-Aktualisierung automatisiert. Es löst Aktionen basierend auf Ereignissen aus:
SASS -Datei speichern Trigger -SASS -Kompilierung und Minimified CSS -Ausgabe.
Öffnen Sie Ihre Befehlszeile und installieren Sie Gulp global mit NPM:
Überprüfen Sie die Installation mitnpm install gulp -g
gulp -v
Download Unterzahlen von unterstrichen.me, erstellen Sie ein Thema (z. B. "Gulp-Wortpress"), platzieren Sie es in Ihr WordPress-Themenverzeichnis und aktivieren Sie es.
Navigieren Sie mit der Befehlszeile zu Ihrem Themenverzeichnis (z. B. ). Initialisieren Sie NPM:
npm install gulp -g
Befolgen Sie die Eingabeaufforderungen, um package.json
zu erstellen. Dann Gulp lokal installieren:
npm init
ES6 Versprechensunterstützung: Installieren Sie die es6-promise
Polyfill:
npm install gulp --save-dev
erstellen gulpfile.js
: Erstellen Sie eine leere gulpfile.js
-Datei im Stammverzeichnis Ihres Themas.
Beschleunigung der Entwicklung mit Gulp -Aufgaben
CSS (SASS) Workflow:
Plugins installieren:
npm install es6-promise --save-dev
Erstellen sass
Verzeichnis: Erstellen Sie ein sass
Verzeichnis mit Ihrer style.scss
-Datei (einschließlich WordPress -Stylesheet -Header und einem Inhaltsverzeichnis).
gulpfile.js
(SASS -Aufgabe): Diese Aufgabe erstellt SASS, fügt Anbieterpräfixe hinzu und generiert optional RTL -Stylesheets.
npm install gulp-sass gulp-autoprefixer gulp-rtlcss gulp-rename --save-dev
Dateianträge:
Fügen Sie eine Uhrenaufgabe hinzu, um die Aufgabe sass
automatisch erneut auszuführen, wenn sich SASS-Dateien ändern:
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('./')); });
Fehlerbehandlung mit gulp-plumber
:
für eine verbesserte Fehlerbehandlung gulp-plumber
und gulp-util
installieren:
gulp.task('watch', () => { gulp.watch('./sass/**/*.scss', gulp.parallel('sass')); }); gulp.task('default', gulp.parallel('sass', 'watch'));
aktualisieren Sie Ihre sass
Aufgabe:
npm install gulp-plumber gulp-util --save-dev
JavaScript Workflow:
Plugins installieren:
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 });
erstellen .jshintrc
: Erstellen Sie eine .jshintrc
-Datei in Ihrem Thema, um JSHINT zu konfigurieren.
gulpfile.js
(JS -Aufgabe): Diese Aufgabe verkettet, Lints und minimiert JavaScript -Dateien.
npm install gulp-concat gulp-jshint gulp-uglify --save-dev
Denken Sie daran, in Ihrem app.min.js
functions.php
Bildoptimierung:
Plugin installieren:
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')); });
Bildordner erstellen: /images/src
Ordner erstellen /images/dist
und
gulpfile.js
(Bildaufgabe):
npm install gulp-imagemin --save-dev
watch
Aktualisieren Sie Ihre Aufgaben default
und images
, um die
browsersync für Echtzeit nachladen:
Plugin installieren:
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
(BrowserSync -Integration):
npm install browser-sync --save-dev
'http://localhost:8888/wordpress/'
Denken Sie daran,
Dieser erweiterte Leitfaden bietet einen umfassenderen und strukturierteren Ansatz zur Integration von Gulp in Ihren Workflow zur Entwicklung von WordPress -Themen. Denken Sie daran, die Dokumentation für jedes Gulp -Plugin für erweiterte Konfigurationsoptionen zu konsultieren.
Das obige ist der detaillierte Inhalt vonWordPress -Thema Automatisierung mit Schluck. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!