Wordpress en ligne de commande: wp-cli
wp-cli
est l'outil officiel de gestion de Wordpress en ligne de commande (CLI
).
Il permet notamment :
- d'installer Wordpress
- d'installer des plugins ou des thèmes Wordpress
- mettre à jour la version d'une installation Wordpress existante et d'accéder plus généralement aux fonctionnalités coté admin en ligne de commande
- sauvegarder son installation Wordpress
Installer et mettre à jour wp-cli
Installation
Le process d'installation consiste à récupérer l'outil (qui est un script php, fichier .phar
), et de le rendre disponible dans le PATH
- Installer
wp-cli
aveccurl
:
$ curl -O https://raw.githubusercontent.com/wp-cli/builds/gh-pages/phar/wp-cli.phar
- vérifier l'installation
php wp-cli.phar --info
- rendre exécutable le fichier .phar
sudo chmod +x wp-cli.phar
- déplacer le script dans
/usr/local/bin
, pour la rendre exécutable depuis le PATH et la renommer pour simplifierwp-cli.phar
enwp-cli
sudo mv wp-cli.phar /usr/local/bin/wp-cli
- créer un raccourci (symlink) pour avoir votre PATH la commande
wp-cli
mais aussiwp
sudo ln -s /usr/local/bin/wp-cli /usr/local/bin/wp
- vérifier l'accessibilité de la nouvelle commande
wp
wp --info
Mise à jour
Le script wp-cli
se met à jour simplement via la commande
wp cli update
Utilisation de wp-cli
A partir de là vous pouvez effectuer une fresh install de wordpress, effectuer une mise à jour de votre installation Wordpress, installer un theme ou un plugin en 1 commande 🎉 !
Pour l'ensemble des commandes wp il existe un ensemble d'options communes appelés paramètres globaux (ex --path
).
sudo wp-cli
L'utilisation de sudo
avec la commande wp
nous affiche des messages auxquelles il faut preter attention, cependant si elles nécessitent sudo
, il existe l'option --allow-root
de wp
(cas d'usage : docker containers).
Plus récement depuis la version 2.6.0 du wp cli, une variable d'environnement WP_CLI_ALLOW_ROOT
permet de s'affranchir de cette option.
Upgrade de Wordpress en 30sec
Pour mettre a jour sa version de Wordpress, ses thèmes, plugins :
# Mettre à jour l'instance Wordpress
wp core update --path='/var/www/wordpress' --allow-root
# Mise à jour de tous les Thèmes
wp theme update twentyfifteen twentysixteen
# Passage en mode auto update de tous les Thèmes (recommandé)
wp theme auto-updates enable --all
# Mise à jour de tous les Plugins
wp plugin update --all
# Passage en mode auto update de tous les Plugins (recommandé)
wp plugin auto-updates enable --all
Mode maintenance
wp-cli
nous permet d'activer un mode "maintenance" avec wp maintenance-mode
Activates, deactivates or checks the status of the maintenance mode of a site.
wp maintenance-mode <command>
activate Activates maintenance mode.
deactivate Deactivates maintenance mode.
is-active Detects maintenance mode status.
status Displays maintenance mode status.
Migration de nom de domaine
- tester si une instance de WP tourne actuellement pour l'installation souhaitée:
wp core is-installed --path='/var/www/wordpress'
- effectuer un backup complet de la base WP dans un .sql avec
wp db export
:
wp db export --path='/var/www/wordpress' nom_de_mon_dump.sql
- la commande
search
n'existant pas, il faut ruser et utiliserwp search-replace
avec l'option--dry-run
pour rechercher un élément :
wp search-replace http://ancien.com http://nouveau.com --path='/var/www/wordpress' --dry-run
- modifier en base toutes les occurences de l'ancien nom de domaine avec
wp search-replace
:
wp search-replace 'http://ancien.com' 'http://nouveau.com' --path='/var/www/wordpress'
Reset du mot de passe d'un utilisateur
Il est possible de modifier le mot de passe d'un utilisateur quelconque, notamment de l'admin sur une instance Wordpress spécifique:
wp user list
pour récupérer la liste des utilisateurs enregistrés, ainsi que leurs roles puis wp user update
:
wp user update login_de_l_utilisateur --user_pass="nouveau_mot_de_passe" --path='/var/www/wordpress/'