Maison >Tutoriel CMS >WordPresse >Automatisation du thème WordPress avec Gulp
rationaliser le développement de votre thème WordPress avec l'automatisation de Gulp! Ce tutoriel montre comment intégrer Gulp dans votre flux de travail pour automatiser les tâches répétitives et augmenter l'efficacité.
Avantages clés:
gulp-sass
, gulp-autoprefixer
et gulp-rtlcss
pour étendre la fonctionnalité. gulp-plumber
empêche les erreurs d'arrêter le processus. Pourquoi automatiser?
L'automatisation de votre flux de travail offre des avantages importants:
Outils essentiels:
Présentation de Gulp
Gulp est un coureur de tâche JavaScript automatisant des tâches longues telles que la compression CSS, la compilation SASS, l'optimisation d'image et le rafraîchissement du navigateur. Il déclenche des actions en fonction des événements:
Gulp Configuration
Installation globale: Ouvrez votre ligne de commande et installez Gulp Globalement à l'aide de NPM:
<code class="language-bash">npm install gulp -g</code>
Vérifiez l'installation avec gulp -v
. Vous devriez voir la version gulp.
Configuration du thème (en utilisant des sous-oreurs): Télécharger des sous-oreurs à partir de sous-ore. >
Installation locale du gulp: Accédez à votre répertoire de thème à l'aide de la ligne de commande (par exemple, ). Initialiser NPM: cd ~/www/wordpress/wp-content/themes/gulp-wordpress
<code class="language-bash">npm install gulp -g</code>
Suivez les invites pour créer package.json
. Installez ensuite Gulp localement:
<code class="language-bash">npm init</code>
ES6 PRARMES SUPPORT: Installez le es6-promise
polyfill:
<code class="language-bash">npm install gulp --save-dev</code>
Créer gulpfile.js
: Créer un fichier vide gulpfile.js
dans le répertoire racine de votre thème.
accélérer le développement avec les tâches gulp
CSS (SASS) Workflow:
Installer les plugins:
<code class="language-bash">npm install es6-promise --save-dev</code>
Créer sass
répertoire: Créer un répertoire sass
avec votre fichier style.scss
(y compris l'en-tête de feuille de style WordPress et une table de contenu).
gulpfile.js
(tâche SASS): Cette tâche compile Sass, ajoute des préfixes des fournisseurs et génère éventuellement des feuilles de styles RTL.
<code class="language-bash">npm install gulp-sass gulp-autoprefixer gulp-rtlcss gulp-rename --save-dev</code>
Recherche de fichiers:
Ajoutez une tâche de surveillance pour réinstaller automatiquement la tâche sass
lorsque les fichiers SASS changent:
<code class="language-javascript">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('./')); });</code>
Gestion des erreurs avec gulp-plumber
:
Installez gulp-plumber
et gulp-util
pour améliorer la gestion des erreurs:
<code class="language-javascript">gulp.task('watch', () => { gulp.watch('./sass/**/*.scss', gulp.parallel('sass')); }); gulp.task('default', gulp.parallel('sass', 'watch'));</code>
Mettez à jour votre tâche sass
:
<code class="language-bash">npm install gulp-plumber gulp-util --save-dev</code>
JavaScript Workflow:
Installer les plugins:
<code class="language-javascript">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 });</code>
Créer .jshintrc
: Créer un fichier .jshintrc
dans la racine de votre thème pour configurer Jshint.
gulpfile.js
(tâche js): Cette tâche concaténe, peluches et diminue les fichiers javascript.
<code class="language-bash">npm install gulp-concat gulp-jshint gulp-uglify --save-dev</code>
N'oubliez pas d'enquareue app.min.js
dans votre functions.php
.
Optimisation d'image:
Installer le plugin:
<code class="language-javascript">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')); });</code>
Créer des dossiers d'image: Créer /images/src
et /images/dist
dossiers.
gulpfile.js
(tâche d'image): Cette tâche optimise les images.
<code class="language-bash">npm install gulp-imagemin --save-dev</code>
Mettez à jour vos tâches watch
et default
pour inclure la tâche images
.
BrowSersync pour le rechargement en temps réel:
Installer le plugin:
<code class="language-javascript">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')); });</code>
gulpfile.js
(intégration BrowSersync):
<code class="language-bash">npm install browser-sync --save-dev</code>
N'oubliez pas de remplacer 'http://localhost:8888/wordpress/'
par votre URL de développement WordPress local.
Ce guide amélioré fournit une approche plus complète et structurée pour intégrer Gulp dans votre flux de travail de développement de thème WordPress. N'oubliez pas de consulter la documentation pour chaque plugin Gulp pour les options de configuration avancées.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!