A la commande de WP-CLI

Kirsten Cassidy

@mantismamita

À la commande de WP-CLI

Kirsten Cassidy

Qu'est-ce que WP-CLI ?

WP-CLI est un ensemble d'outils pour la gestion des installations WordPress sans aide d'un navigateur web.

Pourquoi utiliser WP-CLI ?

Pourquoi ne pas utiliser WP-CLI ?

Migration

Migrations used to really suck*

-Daniel Bachhuber (mainteneur actuel WP-CLI)

*La Migration, ça craignait vraiment.

D'abord se connecter via ssh*

* Permet une connexion sécurisée avec un seveur distant

Se connecter en SSH vers l'ancien server pour copier et compresser le site

			wp db export vieuxsite.sql
			gzip -v vieuxsite.sql
			tar czvf vieuxsite.tar.gz ./wp-content #compresser
			

Se connecter en SSH vers le nouveau serveur pour copier le site

		scp vieuxuser@vieuxsite.com:~/webapps/vieuxsite/vieuxsite.tar.gz \
			nouveauuser@nouveausite.com:~/webapps/nouveausite/
		scp vieuxuser@vieuxsite.com:~/webapps/vieuxsite/vieuxsite.sql.gz \
			nouveauuser@nouveausite.com:~/webapps/nouveausite/
		#ici on copie directement de l'ancien au nouveau
		

SSH avec le nouveau serveur pour installer WordPress

			wp core download --locale=fr_FR
			rm -r wp-content
			tar xzvf vieuxsite.tar.gz #extraire
			wp core config --dbname=nombdd --dbuser=utilisateurbdd --dbpass=bddmotdepasse --dbhost=localhost --dbprefix=monwp_
			gunzip < vieuxsite.sql.gz | wp db import - 
			wp search-replace vieuxsite.com nouveausite.com --dry-run
			wp search-replace vieuxsite.com nouveausite.com #si tout va bien
		

La mise en place d'un nouveau site

Quelques commandes utiles

			wp core download --version=4.2.2 --locale=fr_FR
			wp core config --dbname=nombdd --dbuser=utilisateurbdd --dbpass=bddmotdepasse --dbhost=localhost --dbprefix=monwp_
			wp core install --url=monsite.com  --title="Mon Site WordPress" --admin_user=admin_user --admin_password=admin_password --admin_email="admin@monsite.com"
		

Les mises à jour

D'abord une sauvegarde !

			wp db export monsite.sql
			tar vcf monsite.tar.gz ./wp-content # tar -vxf monsite.tar pour extraire


		

et ensuite...

			wp core update --version=4.2 --force
			wp core update --locale=fr_FR
			wp theme update --all
			wp plugin update --all
			wp plugin list --update=available --status=active --field=name | xargs wp plugin update
		

Mettre à jour plusieurs sites sur un serveur

            #!/bin/bash
            declare -a sites=('/var/www/wp1' '/var/www/wp2' '/var/www/wp3')
            for site in "${sites[@]}";
            do
            wp --path=$site core update
            done
		

Générer un squelette

wp scaffold

			wp scaffold child-theme
			wp scaffold plugin
			wp scaffold post-type
			wp scaffold taxonomy
		

Utiliser la sous-commande --promptpour gagner de temps

Pour les plus courageux

			wp shell #n'oubliez pas "exit" pour sortir
			wp eval
			wp eval 'echo get_option("siteurl"). "\n";'
			wp eval-file
		

Commandes communautaires

Développeurs : Faire des commandes propres à vos extensions

WP-CLI Commands Cookbook

Hébergeurs : Installer WP-CLI par default

Liste d'hébergeurs avec WP-CLI

Scripts Shell et bash !

L'avenir de WP-CLI

Tout le monde s'en sert !

Merci !

 kirstencassidy.com

 @mantismamita sur Twitter

 mantismamita sur GitHub

Reprogramming ENIAC computer

Questions ?

Reprogramming ENIAC computer