Travailler en équipe sur un projet sans conflits
Devoir réecrire un code similaire sur plusieurs projets
Tâches similaires récurrentes non automatisées
Projets de plus en plus complexes
Gagner du temps
- Lors de la mise en place du projet
- Pendant le développement lui-même
Réutiliser sans recoder au maximum
Travailler sereinement en équipe
Eviter les erreurs humaines
WP-CLI pour la mise en place du projet en un clic
Utilisation d'un starter theme
Versionnement des projets avec Git
Préprocesseurs & Browser refreshing
Utilisation d'outils comme Emmet
Mise en ligne via Git ou FTP via Deploy
Automatiser des tâches WP en ligne de commande
Sublime Text
éditeur de code
iTerm
console
Alfred
lanceur d'apps
Télécharger WordPress
Télécharger et activer des thèmes, plugins
Installer et configurer WordPress
Créer, modifier ou supprimer des pages et articles
Modifier des options
Accéder à la base de données
Chercher des chaines et les remplacer
Exporter des données
Chercher des mises à jour
...
Installer une nouvelle instance WordPress "from scratch"
(ce que l'on va voir aujourd'hui)
Vérifier les mises à jour de vos sites, à la manière du service Manage WP
Remplacer toutes les URL d'images locales (site.dev ou site:8888) par l'URL de production, à la manière de Velvet Blues URL (idéal pour thèmes premium)
...
Pratique les premières fois, mais répétitif et long au bout du centième site
Beaucoup de tâches récurrentes à faire à
chaque fois manuellement pendant et
après l'installation
WP-CLI va nous permettre
d'automatiser cette tâche !
Créer une base de données dans phpMyAdmin
Créer un Alias Apache
Télécharger la dernière version FR de WordPress
Le placer dans votre dossier de travail
Installation en 5 minutes
- indiquer les accès à la base
- définir le nom du site, l'id et le mdp
Faire quelques réglages
Télécharger votre thème
L'activer
Télécharger vos plugins préférés
Les activer
Configurer votre thème et vos plugins
Définir la structure des permaliens (/%postname%/)
Supprimer Hello Dolly
Supprimer les thèmes twenty...
Supprimer les articles et pages de bases
Créer vos premières pages (Accueil, Actus, Contact...)
Créer votre menu principal
Assigner les pages à votre menu
Giter votre projet faire le premier commit
Ouvrir votre éditeur de code
Installation (wp-cli.org/)
curl -O https://raw.githubusercontent.com/wp-cli/builds/gh-pages/phar/wp-cli.phar
Vérification
# FIX PHP MAMP for WP-CLI
export PATH=/Applications/MAMP/bin/php/php5.6.2/bin:$PATH
export PATH=$PATH:/Applications/MAMP/Library/bin/
Mamp : Ajouter des Paths pour pointer vers le bon PHP
php wp-cli.phar --info
A mettre dans le fichier .zshrc situé à la racine du système ~/.zshrc
Nous avons réalisé un script Bash permettant d'automatiser toutes les tâches vues plus haut
Le script Bash est un fichier .sh qui peut être exécuté par un terminal via la commande suivante :
Le script bash nous permet d'accéder aux opérations système : créer un dossier, télécharger un fichier
et lancer les commandes WP-CLI
bash /path/to/myscript.sh argument1 argument2
Wippy (。◕‿◕。) est notre script WP
Analysons le code Bash
Et ensuite nous lancerons une démo (amen)
Il est possible de créer une action Alfred si vous possédez le PowerPack
1. Définir un mot-clé
2. Action Terminal pour lancer le script bash
3. Notification système
{query} permet de récupérer les arguments
Starters / Blank / Frameworks / Selfmade
Bones (http://themble.com/bones/)
Underscores (http://underscores.me/)
WooThemes Canvas (http://www.woothemes.com/products/canvas/)
Genesis (http://my.studiopress.com/themes/genesis/)
Blank (http://html5blank.com/)
Nous utilisons notre propre thème, amélioré au fil des projets avec toutes les fonctionnalités de base dont on a besoin
WP 0 Theme (https://bitbucket.org/maximebj/wordpress-zero-theme)
Versionner son projet et améliorer le flux de dév
Sauvegarde chaque étape de développement comme une sauvegarde dans un jeu vidéo
Travailler efficacement en équipe : fusion automatique des versions et aide à la résolution de conflits de code
Pousser en production en une commande
Partager facilement un projet Open Source
Wiki, Gestion des bugs/erreurs ...
Pour les plus téméraires
Tower for Mac (http://www.git-tower.com/)
Github for Mac et windows (https://mac.github.com/)
Github.com
Beanstalkapp.com
Bitbucket.com (gratuit)
Aussi bien pour code open source que code privé
Alléger l'écriture de votre HTML/CSS/JS
Ecrire moins de code
Lecture du code plus claire
Meilleure maintenabilité du code
DRY : Don't repeat yourself
Sass & Compass / Less / Stylus / Bourbon
CoffeeScript
Haml
Stylus
HAML
Les préprocesseurs ont besoin d'être compilés à l'enregistrement pour devenir du js, html et css purs
Grunt (http://gruntjs.com/)
Codekit for Mac (https://incident57.com/codekit/)
Compilation automatique de tous vos fichiers
Minification automatique
Vérification de votre code JS (JSHint)
Ajout des préfixs CSS automatique : Autoprefixr
Rafraichissement de la page automatique sur tous vos périphériques
...
Mettre à jour vos navigateurs, sur desktop / mobile / tablette automatiquement lors de l'enregistrement d'un fichier du site
anciennement zencoding
Écriture abrégée
Après appui sur Tab
Automatisée pour gagner du temps et limiter les erreurs
Eviter une mise en ligne "à la main" pour éviter les erreurs
Vous pourrez pousser en ligne avec Git. Nous utilisons WP Engine pour héberger nos sites et nous pouvons "pousser" une version d'un clic en préprod ou prod
Déploiement rapide via FTP avec Dploy en nodejs
(https://github.com/LeanMeanFightingMachine/dploy)
Gérer efficacement les projets, tâches,
travailler à distance en équipe ...
Bonus
@maximebj
Mon blog : wp-spread.com
Notre agence web : smoothie-creative.com
Illustrations : https://dribbble.com/buatoom