Intéragir et manager WordPress avec WP-CLI

22/06/2018

Aucun commentaire

WP-CLI, mais qu’est-ce que c’est ?

WP-CLI est une interface en ligne de commande pour WordPress. Elle vous permet d’interagir et manager WordPress, sans utiliser votre navigateur Web.

Le but est d’offrir une alternative complète au panneau d’administration de WP.

Installer WordPress, mettre à jour ses extensions, ses thèmes, créer, éditer et supprimer des pages, devient un véritable jeu d’enfant!

Installation de WP-CLI

Tout d’abord, et avant d’installer WP-CLI, assurez-vous que votre environnement répond aux éxigences minimales :

– Environnement UNIX (OS X, Linux, FreeBSD, Cygwin), support limité sur les environnement Windows
– PHP 5.3.29 ou plus
– WordPress 3.7 ou plus, les versions versions plus anciennes de WordPress auront des fonctionnalités dépréciées

Une fois votre environnement vérifié, téléchargez le fichier wp-cli.phar en utilisant wget, curl ou en cliquant sur le lien précédent.

curl -O https://raw.githubusercontent.com/wp-cli/builds/gh-pages/phar/wp-cli.phar

Il faut ensuite vérifier que le fichier .phar fonctionne :

php wp-cli.phar --infos

Pour utiliser WP-CLI en tapant « wp » dans la console, il faut rendre le fichier exécutable et le déplacer quelque part dans votre PATH. Par exemple :

chmod +x wp-cli.phar
sudo mv wp-cli.phar /usr/local/bin/wp

Aussi, si WP-CLI est bien installé, vous devriez obtenir quelque chose comme ceci lorsque vous entrez la commande wp –info :

$ wp --info
OS:	Darwin 16.7.0 Darwin Kernel Version 16.7.0: Thu Jan 11 22:59:40 PST 2018; root:xnu-3789.73.8~1/RELEASE_X86_64 x86_64
Shell:	/bin/zsh
PHP binary:    /usr/local/bin/php
PHP version:    7.0.22
php.ini used:   /etc/local/etc/php/7.0/php.ini
WP-CLI root dir:        /home/wp-cli/.wp-cli
WP-CLI vendor dir:	    /home/wp-cli/.wp-cli/vendor
WP-CLI packages dir:    /home/wp-cli/.wp-cli/packages/
WP-CLI global config:   /home/wp-cli/.wp-cli/config.yml
WP-CLI project config:
WP-CLI version: 1.5.1

Installer WordPress avec WP-CLI

Avant toutes choses, rendez-vous sur votre serveur de développement (MAMP, Vagrant, Serveur mutualisé ou dédié via ssh) et créez un nouveau dossier :

$ cd path/to/folder
$ mkdir mon-wordpress
$ cd mon-wordpress

Téléchargement de WordPress

Ensuite téléchargez WordPress avec la commande wp core :

# On télécharge WordPress en forçant la langue en FR
$ wp core download --locale=fr_FR
Downloading WordPress 4.9.2 (fr_FR)...
md5 hash verified: c5366d05b521831dd0b29dfc386e56a5
Success: WordPress downloaded.

# On affiche la version de WordPress
$ wp core version
4.9.2

# Mettre à jour la version de WordPress
$ wp core update
Updating to version 4.5.2 (fr_FR)...
Downloading update from https://downloads.wordpress.org/release/wordpress-4.5.2-no-content.zip...
Unpacking the update...
Cleaning up files...
No files found that need cleaning up
Success: WordPress updated successfully.

Cette commande va télécharger tous les fichiers WordPress + les sous dossiers (wp-content, wp-includes, …) dans votre dossier de travail.

Création du fichier wp-config.php et de la base de données

Ensuite il faut installer WordPress, pour ce faire il faudra créer le fichier de configuration wp-config.php  avec la commande wp-config :

# wp-config.php standard
$ wp config create --dbname=my_database --dbuser=root --dbpass=root --dbprefix=wp123 --locale=fr_FR
  •  –dbname : Nom de la base de données
  • –dbuser : Utilisateur de la base de données
  • –dbpass : Mot de passe de la base de données
  • –dbprefix : Préfixe de la base de données
  • –locale : Langue de votre instance WordPress

Une fois le fichier wp-config.php créé, il faudra initier la base de données avec la commande suivante wp db :

# Création de la base de données
$ wp db create
Success: Database created.

La création de la base de données va se concentrer sur les infos contenues dans le fichier wp-config.php.

Dans notre exemple, les renseignements de la BDD seront les suivants :

  • Nom : my_database
  • Utilisateur : root
  • Mot de passe : root.

Installation de WordPress

Une fois votre fichier wp-config.php et votre base de données créés, vous pouvez installer WordPress avec la commande wp core :

# Installation de WordPress
$ wp core install --url=http://local.dev/mon-wordpress --title="Mon site WordPress" --admin_user=admin --admin_password=strongpassword [email protected]
Success: WordPress installed successfully.
  • –url : Url du site
  • –title : Titre du site
  • –admin_user : administrateur du site
  • –admin_password : mot de passe de l’administrateur
  • –admin_email : email de l’adinistrateur

CONGRATULATIONS!!!

Vous venez d’installer un nouveau site WordPress avec WP-CLI. Votre site est maintenant accessible à l’url http://local.dev/mon-wordpress.

Manager les thèmes WordPress

Grâce à WP-CLI vous pouvez installer et manager des thèmes sur votre site WordPress. Pour ce faire, il vous faudra utiliser la commande wp theme :

# Installation d'un thème (ex: twentysixteen)
$ wp theme install twentysixteen
Installing Twenty Sixteen (1.2)
Downloading install package from https://downloads.wordpress.org/theme/twentysixteen.1.2.zip...
Unpacking the package...
Installing the theme...
Theme installed successfully.

# Activation du thème
$ wp theme activate twentysixteen
Success: Switched to 'Twenty Seventeen' theme.

# Vous pouvez installer et activer un thème avec cette commande
$ wp theme install twentysixteen --activate
Installing Twenty Sixteen (1.2)
Downloading install package from https://downloads.wordpress.org/theme/twentysixteen.1.2.zip...
Unpacking the package...
Installing the theme...
Theme installed successfully.
Activating 'twentysixteen'...
Success: Switched to 'Twenty Sixteen' theme.

# Afficher la liste des thèmes
$ wp theme list

+--------------------+----------+-----------+---------+
| name               | status   | update    | version |
+--------------------+----------+-----------+---------+
| twentysixteen      | active   | available | 1.4     |
+--------------------+----------+-----------+---------+

# Mettre un jour un thème
$ wp theme update twentysixteen
Downloading update from https://downloads.wordpress.org/theme/twentysixteen.1.2.zip...
Unpacking the update...
Installing the latest version...
Removing the old version of the theme...
Theme updated successfully.
+-----------------+-------------+-------------+---------+
| name            | old_version | new_version | status  |
+-----------------+-------------+-------------+---------+
| twentysixteen   | 1.4         | 1.6         | Updated |
+-----------------+-------------+-------------+---------+
Success: Updated 1 of 1 themes.

# Supprimer un thème
$ wp theme delete twentysixteen
Deleted 'twentytsixteen' theme.
Success: Deleted 1 of 1 themes.

# Vous pouvez intéragir sur plusieurs thèmes à la fois en listant les thèmes les un à la suite des autres
$ wp theme install twentyfifteen twentysixteen twentyseventeen

# Ou intéragir sur tous les thèmes
$ wp theme delete --all

Manager les plugins WordPress

Grâce à WP-CLI vous pouvez installer et manager des plugins sur votre site wordpress, pour ce faire il faut utiliser la commande wp plugin :

# Installation d'un plugin WordPress (ex: bbpress)
$ wp plugin install bbpress
Installing bbPress (2.5.9)
Downloading install package from https://downloads.wordpress.org/plugin/bbpress.2.5.9.zip...
Using cached file '/home/vagrant/.wp-cli/cache/plugin/bbpress-2.5.9.zip'...
Unpacking the package...
Installing the plugin...
Plugin installed successfully.
Success: Installed 1 of 1 plugins.

# Activation d'un plugin
$ wp plugin activate bbpress
Plugin 'bbpress' activated.
Success: Activated 1 of 1 plugins.

# Désactivation d'un plugin
$ wp plugin deactivate bbpress
Plugin 'bbpress' deactivated.
Success: Deactivated 1 of 1 plugins.

# Installation et activation d'un plugin
$ wp plugin install bbpress --activate
Installing bbPress (2.5.9)
Downloading install package from https://downloads.wordpress.org/plugin/bbpress.2.5.9.zip...
Using cached file '/home/vagrant/.wp-cli/cache/plugin/bbpress-2.5.9.zip'...
Unpacking the package...
Installing the plugin...
Plugin installed successfully.
Activating 'bbpress'...
Plugin 'bbpress' activated.
Success: Installed 1 of 1 plugins.

# Désinstaller un plugin
$wp plugin delete bbpress
Deleted 'bbpress' plugin.
Success: Deleted 1 of 1 plugins.

# Vous pouvez intéragir sur plusieurs plugins en même temps
$wp plugin install hello bbpress contact-form-7 --activate
$wp plugin delete --all

En conclusion

WP-CLI est un outil très pratique pour manager votre site WordPress sans utiliser le panneau d’administration dans votre navigateur.

Nous venons donc de partager avec vous des exemples basiques comme la gestion des thèmes et des plugins, mais ce n’est qu’un léger aperçu de tout ce que vous pouvez réaliser grâce aux commandes WP-CLI.

Si vous voulez plus d’informations n’hésitez pas à consulter le site officiel de WP-CLI : wp-cli.org.