WP-CLI : les commandes utiles au quotidien

Il y a quelques années, je faisais tout dans l’interface admin de WordPress. Mettre à jour un plugin, créer un utilisateur, vider le cache… tout passait par le navigateur. Le jour où j’ai découvert WP-CLI, ma productivité a fait un bond spectaculaire. Aujourd’hui, je ne pourrais plus m’en passer — et si vous gérez des sites WordPress, vous devriez connaître ces wp-cli commandes utiles 😊

WP-CLI, c’est l’interface en ligne de commande officielle de WordPress. Elle permet de gérer quasiment tout votre site depuis un terminal : posts, utilisateurs, plugins, base de données, et bien plus. Dans cet article, je partage les commandes que j’utilise au quotidien en tant que développeur freelance, avec des cas concrets.

Installer WP-CLI et vérifier que tout fonctionne

Avant de parler des commandes utiles, assurons-nous que WP-CLI est bien installé. Sur la plupart des hébergements modernes, il est déjà disponible. En local, l’installation est simple :

  • Téléchargez le fichier phar : curl -O https://raw.githubusercontent.com/wp-cli/builds/gh-pages/phar/wp-cli.phar
  • Rendez-le exécutable : chmod +x wp-cli.phar
  • Déplacez-le : sudo mv wp-cli.phar /usr/local/bin/wp
  • Vérifiez : wp --info

Si vous utilisez Bedrock comme moi, WP-CLI fonctionne nativement avec la structure du projet. Il suffit de lancer vos commandes depuis la racine du projet.

Les wp-cli commandes utiles pour la gestion quotidienne

Voici les commandes que je tape littéralement tous les jours. Elles couvrent 80% des besoins courants d’un développeur WordPress.

Gérer les plugins en une ligne

Installer, activer, mettre à jour ou supprimer un plugin se fait en quelques secondes. Par exemple, pour mettre à jour tous les plugins d’un coup : wp plugin update --all. Pour installer et activer un plugin spécifique : wp plugin install advanced-custom-fields --activate. Et pour lister tous les plugins avec leur statut : wp plugin list. Franchement, quand vous gérez plusieurs sites clients, cette rapidité change la donne.

Manipuler la base de données sans phpMyAdmin

C’est probablement là que WP-CLI m’a le plus fait gagner du temps. La commande wp db export backup.sql crée un dump complet de votre base en une seconde. Pour un search-replace lors d’une migration (par exemple changer l’URL du site) : wp search-replace 'ancien-domaine.fr' 'nouveau-domaine.fr' --dry-run. Le flag --dry-run vous montre ce qui va changer avant d’exécuter. Indispensable pour éviter les mauvaises surprises.

Gérer les utilisateurs rapidement

Créer un admin temporaire pour un client ? wp user create client client@email.fr --role=administrator. Lister tous les admins : wp user list --role=administrator. Supprimer un utilisateur en réattribuant ses contenus : wp user delete 42 --reassign=1. En conséquence, plus besoin de naviguer dans trois écrans d’admin pour une opération qui prend cinq secondes en CLI.

Commandes WP-CLI avancées pour les développeurs

Au-delà des basiques, WP-CLI offre des commandes puissantes que peu de développeurs exploitent. Voici celles que j’utilise régulièrement dans mes projets de développement de thèmes custom.

Scaffolding : générer du code propre

WP-CLI peut générer automatiquement la structure d’un plugin, d’un thème ou d’un custom post type. Par exemple : wp scaffold post-type portfolio --label="Portfolio" --textdomain=montheme. Le code généré respecte les standards WordPress, ce qui vous donne une base solide. Néanmoins, je l’utilise surtout comme point de départ — j’adapte toujours le résultat à l’architecture du projet.

Cron et tâches planifiées

Les crons WordPress sont souvent source de problèmes. Avec wp cron event list, vous voyez tous les événements planifiés. Pour forcer l’exécution d’un cron bloqué : wp cron event run --due-now. C’est particulièrement utile quand un plugin de cache ou de SEO ne se met pas à jour comme prévu.

Maintenance et nettoyage

Vider les transients accumulés : wp transient delete --all. Régénérer les thumbnails après un changement de tailles d’images : wp media regenerate --yes. Optimiser la base de données : wp db optimize. Ces trois commandes, lancées une fois par mois, gardent votre WordPress propre et rapide. D’ailleurs, si la performance de votre site WordPress vous préoccupe, WP-CLI est un allié précieux.

Créer des alias WP-CLI pour aller encore plus vite

Un truc que j’ai mis en place et qui me fait gagner un temps fou : les alias WP-CLI. Dans votre fichier ~/.wp-cli/config.yml, vous pouvez définir des raccourcis pour vos sites distants. Par exemple, wp @prod plugin list exécute la commande directement sur votre serveur de production via SSH. Plus besoin de se connecter manuellement à chaque serveur.

De même, vous pouvez créer des scripts bash qui enchaînent plusieurs commandes WP-CLI. Pour ma part, j’ai un script de déploiement qui exporte la base locale, l’importe en staging, fait le search-replace des URLs et vide le cache — le tout en une seule commande. C’est le genre d’automatisation qui distingue un workflow professionnel.

WP-CLI et la sécurité de votre site

WP-CLI est aussi un outil précieux pour la sécurité de votre WordPress. Vérifier les checksums des fichiers core : wp core verify-checksums. Si un fichier a été modifié (signe potentiel de piratage), la commande vous alerte immédiatement. De plus, mettre à jour WordPress en CLI évite de passer par l’admin, ce qui réduit la surface d’attaque.

En résumé, WP-CLI est l’outil que tout développeur WordPress sérieux devrait maîtriser. Il accélère votre workflow, réduit les erreurs manuelles et vous donne un contrôle total sur vos sites. Si vous avez un projet WordPress qui nécessite un développement solide et professionnel, n’hésitez pas à me contacter pour en discuter 🚀

Besoin d'un Développeur Web Freelance ?

Vous avez une question ? Un projet web ? Ce sera avec plaisir d'examiner votre demande.

Contactez-moi !