14 min. lire
WP-CLI : Le guide complet pour gérer WordPress à partir de la ligne de commande
WP-CLI est l’outil officiel de ligne de commande pour gérer les installations WordPress directement depuis votre terminal, sans jamais ouvrir de navigateur. Si vous avez déjà passé un après-midi à cliquer sur le tableau de bord d’administration de WordPress pour mettre à jour des plugins sur plusieurs sites, vous savez déjà pourquoi cet outil existe.
Dans ce guide, vous apprendrez tout, de l’installation de WP-CLI sur Linux, macOS et Windows à l’automatisation de tâches de maintenance complexes avec des scripts et des fichiers de configuration. Que vous gériez un seul blog ou des dizaines de sites clients, la maîtrise de WP-CLI changera fondamentalement votre façon de travailler avec WordPress.
Ce que vous apprendrez :
- Comment installer et configurer WP-CLI sur différents systèmes d’exploitation ?
- Commandes essentielles pour la gestion des plugins, des thèmes, des utilisateurs et du contenu
- Opérations sur les bases de données, y compris les exportations, les importations et la recherche-remplacement en toute sécurité
- Techniques d’automatisation à l’aide de scripts, d’alias et de tâches cron
- Meilleures pratiques pour éviter les pièges les plus courants lorsque vous travaillez depuis le terminal
Qu’est-ce que WP-CLI ? (Explication rapide d’abord)
WP-CLI est l’acronyme de WordPress Command Line Interface, un outil open-source qui vous permet de gérer vos sites WordPress entièrement à partir d’un terminal. Au lieu de vous connecter à wp-admin et de naviguer dans les menus, vous exécutez des commandes comme wp plugin update --all et vous voyez votre pile de plugins se mettre à jour en quelques secondes.
Le projet a débuté vers 2011, créé par des développeurs qui voulaient un moyen plus rapide de gérer WordPress à l’échelle. En 2017, il est passé sous l’égide officielle de WordPress.org et est maintenant maintenu par une équipe de contributeurs dévoués, dont Alain Schlesser et Daniel Bachhuber.
Voici ce que vous devez savoir sur WP-CLI :
- Version stable actuelle : WP-CLI 2.x series
- Compatibilité avec WordPress : Fonctionne avec WordPress 5.x à 6.x (et historiquement jusqu’à 3.7)
- Exigences PHP : PHP 7.4+ ou 8.x recommandé pour la sécurité et les performances.
- Écosystème de commandes : Plus de 40 commandes parentales couvrant pratiquement toutes les opérations de WordPress
- Utilisateurs principaux : Développeurs, agences, ingénieurs DevOps et utilisateurs chevronnés gérant des sites complexes ou multiples.
- Distribution : Disponible sous forme de fichier PHAR, par le biais de gestionnaires de paquets, ou préinstallé sur de nombreux hébergeurs WordPress gérés.
Principaux avantages de l’utilisation de WP-CLI
Une fois que vous avez compris pourquoi WP-CLI existe, la courbe d’apprentissage devient beaucoup plus facile à justifier. Cette section explique les avantages concrets qui font que cet outil vaut la peine d’être utilisé.
Gain de temps sur les tâches répétitives
Mettre à jour 20 plugins via le tableau de bord de WordPress signifie 20 chargements de page, 20 clics et l’observation de 20 barres de progression. Avec WP-CLI, vous lancez wp plugin update --all une fois et vous passez à autre chose. Pour les agences qui gèrent plusieurs sites clients, cette différence se traduit par des heures gagnées chaque semaine.
Opérations groupées et automatisées
Imaginez un scénario dans lequel vous préparez 15 boutiques WooCommerce pour le Black Friday. Vous devez mettre à jour les plugins, vider les caches et vérifier l’intégrité de la base de données sur chaque site. WP-CLI vous permet de scripter toute cette séquence et de l’exécuter sur tous les sites en quelques minutes plutôt qu’en quelques heures. Les principales capacités d’automatisation comprennent :
- Mise à jour de tous les plugins sur plusieurs installations à l’aide d’un seul script
- Créer des utilisateurs en masse avec des rôles prédéfinis
- Exécution de la maintenance nocturne via cron (optimisation de la base de données, nettoyage transitoire)
- Déployer des configurations WordPress identiques dans de nouveaux environnements
Fiabilité des opérations basées sur le navigateur
Les opérations basées sur le navigateur se heurtent à des dépassements de délai HTTP. Les importations de bases de données volumineuses échouent en cours de processus. Les opérations de recherche-remplacement corrompent les données sérialisées lorsqu’elles sont effectuées avec du SQL brut. WP-CLI évite tous ces problèmes parce qu’il fonctionne directement sur le serveur sans contrainte de temps, et sa commande de recherche-remplacement gère correctement les structures de données sérialisées.
Contrôle direct des principaux systèmes de WordPress
À partir d’un seul terminal, vous pouvez :
- Exporter et importer la base de données de WordPress
- Modifier les paramètres de
wp-config.php - Inspecter et déclencher des événements wp-cron
- Activation et désactivation du mode maintenance
- Exécuter un code PHP arbitraire dans le contexte de WordPress
Réduction de la charge sur wp-admin
Sur les serveurs de production occupés, chaque chargement de page du tableau de bord d’administration consomme des ressources. L’exécution des opérations de maintenance via WP-CLI permet de maintenir cette charge sur le serveur web, ce qui est important pendant les périodes de fort trafic.
Exigences et environnements supportés par WP-CLI
Avant d’installer WP-CLI, vous devez vous assurer que votre serveur ou votre environnement local répond aux exigences de base. La bonne nouvelle, c’est que la plupart des installations modernes de WordPress remplissent déjà ces conditions.
Exigences en matière de version de PHP :
- Minimum : PHP 5.6 (bien que cette version soit dépassée)
- Recommandé : PHP 7.4, 8.0, 8.1, 8.2, 8.3, 8.4 ou 8.5 pour la sécurité et la performance en 2026
Compatibilité avec les versions de WordPress :
- Support historique : WordPress 3.7 et plus récent
- Cible moderne : WordPress 5.0 à 6.7+ pour les projets actuels
Attentes en matière de système d’exploitation :
- Meilleur support : Systèmes de type UNIX (Ubuntu 22.04 LTS, Debian 12, CentOS Stream, macOS)
- Windows : Prise en charge via WSL (Windows Subsystem for Linux) ou installation native de PHP
Exigences supplémentaires :
- PHP disponible en ligne de commande (le binaire
phpdoit être dans votre PATH) - cURL ou wget pour télécharger le fichier
wp-cli.phar - Accès SSH pour les serveurs distants (la plupart des plans d’hébergement WordPress infogérés l’incluent par défaut)
De nombreux hébergeurs populaires comme Kinsta, SiteGround, et DreamHost sont maintenant livrés avec WP-CLI pré-installé. WordPress.com inclut également WP-CLI pour les sites dont l’accès SSH est activé.
Comment installer WP-CLI sur Linux et macOS
La méthode d’installation standard utilise le fichier officiel PHAR (PHP Archive). Ce processus fonctionne sur les terminaux Ubuntu, Debian, CentOS, Fedora et macOS.
Etape 1 : Télécharger le fichier PHAR
Ouvrez votre terminal et téléchargez wp-cli.phar en utilisant curl :
curl -O https://raw.githubusercontent.com/wp-cli/builds/gh-pages/phar/wp-cli.phar
Vous pouvez également utiliser wget :
wget https://raw.githubusercontent.com/wp-cli/builds/gh-pages/phar/wp-cli.phar
Etape 2 : Vérifier le téléchargement (optionnel mais recommandé)
Vérifiez la somme de contrôle SHA-256 par rapport à la valeur officielle publiée dans la documentation WP-CLI pour vous assurer que le fichier n’a pas été altéré pendant le téléchargement :
sha256sum wp-cli.phar
Comparez le résultat à la somme de contrôle indiquée sur le site officiel de WP-CLI.
Étape 3 : Testez le fichier PHAR
Confirmez que le fichier php fonctionne :
php wp-cli.phar --info
Vous devriez voir apparaître la version de WP-CLI, la version de PHP et des informations sur le système.
Étape 4 : Rendez-le exécutable et déplacez-le dans le PATH
Marquez le fichier comme exécutable et déplacez-le dans un répertoire du PATH de votre système :
chmod +x wp-cli.phar
sudo mv wp-cli.phar /usr/local/bin/wp
La commande sudo est généralement requise car /usr/local/bin est un répertoire système. Evitez d’installer WP-CLI en tant que root si vous l’exécutez principalement en tant qu’utilisateur normal.
Étape 5 : Vérifier l’installation globale
Confirmer que WP-CLI est maintenant disponible globalement :
wp --info
wp cli version
Vous devriez voir une sortie confirmant la version de wp cli, l’emplacement du binaire PHP, et les détails du système d’exploitation. A ce stade, WP-CLI est installé et prêt à être utilisé.
Comment installer WP-CLI sur Windows
Les utilisateurs de Windows ont deux possibilités : utiliser le sous-système Windows pour Linux (WSL) ou mettre en place une installation Windows native. WSL offre une expérience plus proche de Linux et est généralement recommandé.
Option 1 : Utiliser WSL (recommandé)
Tout d’abord, activez WSL sur Windows 10 ou 11 :
wsl --install
Installez Ubuntu à partir du Microsoft Store, puis lancez le terminal Ubuntu. De là, suivez exactement les mêmes étapes d’installation de Linux que celles décrites dans la section précédente : téléchargez le fichier phar, rendez-le exécutable et déplacez-le sur /usr/local/bin/wp.
Option 2 : Installation native sous Windows
Pour une installation native, vous devez installer PHP pour Windows avec l’exécutable php disponible dans le PATH de votre système.
- Téléchargez et installez PHP depuis le site officiel de PHP pour Windows
- Ajoutez le répertoire PHP à votre variable d’environnement PATH de Windows
- Confirmez que PHP fonctionne en ouvrant l’Invite de commande et en exécutant
php -v
Ensuite, téléchargez le fichier PHAR de WP-CLI :
curl -O https://raw.githubusercontent.com/wp-cli/builds/gh-pages/phar/wp-cli.phar
Windows inclut curl par défaut depuis 2018, donc cela devrait fonctionner sans installation supplémentaire. Créez un dossier pour WP-CLI (par exemple, C:\wp-cli) et déplacez-y le fichier téléchargé.
Créez ensuite un fichier batch wrapper nommé wp.bat dans le même dossier :
@echo off
php "C:\wp-cli\wp-cli.phar" %*
Ajoutez C:\wp-cli à la variable d’environnement PATH de votre système. Ouvrez maintenant une nouvelle invite de commande ou une fenêtre PowerShell et vérifiez :
wp --info
Vous devriez voir la version de WP-CLI et les détails de l’environnement confirmant que WP-CLI est correctement installé.
Utilisation de base de WP-CLI et obtention d’aide
Avec WP-CLI installé, vous devez comprendre le modèle de commande de base avant de plonger dans des opérations spécifiques. Toutes les commandes de WP-CLI suivent cette structure :
wp <command> <subcommand> [options]
Les commandes sont exécutées à partir du répertoire d’installation de WordPress – le dossier contenant wp-config.php. Si vous êtes ailleurs, vous pouvez spécifier le chemin d’accès avec --path=/var/www/html/mysite.
Vérification de votre environnement
Commencez par confirmer votre configuration :
wp --info
Ceci affiche la version de WP-CLI, la version de PHP, le chemin binaire de PHP, le système d’exploitation, et d’autres détails de l’environnement. Pour ne voir que la version de WP-CLI :
wp cli version
Exploration des commandes disponibles
Pour lister toutes les commandes wp cli disponibles :
wp help
Pour obtenir de l’aide sur une commande spécifique :
wp help plugin
wp help core update
Vous pouvez également ajouter --help à n’importe quelle commande :
wp user --help
La sortie de l’aide s’affiche dans un pager similaire aux pages man d’Unix. Appuyez sur q pour quitter.
Premiers ordres à essayer :
wp core version– affiche votre version de WordPresswp plugin list– affiche tous les plugins WordPress installés avec leur statutwp theme list– affiche les thèmes installéswp user list– liste tous les utilisateurs du site
Ces commandes en lecture seule vous permettent d’explorer votre site WordPress sans rien modifier, ce qui est parfait pour se familiariser avec l’interface.
Installation et configuration de WordPress avec WP-CLI
WP-CLI peut effectuer une nouvelle installation complète de WordPress plus rapidement que l’installateur web traditionnel. C’est particulièrement utile pour créer des environnements de développement ou déployer de nouveaux sites par programme.
Conditions préalables
Avant d’exécuter les commandes d’installation, vous devez disposer d’une base de données MySQL ou MariaDB. Pour cet exemple, nous supposons que vous avez créé une base de données MySQL ou MariaDB :
- Nom de la base de données :
wpsite_db - Utilisateur de la base de données :
wpsite_user - Mot de passe :
securepassword123 - Hôte :
localhost
Étape 1 : Télécharger les fichiers de base de WordPress
Naviguez vers le répertoire d’installation de votre choix et téléchargez les fichiers de base de WordPress :
wp core download
Cela permet de récupérer la dernière version de WordPress. Pour spécifier une version ou une locale :
wp core download --version=6.4.2 --locale=fr_FR
Une fois le téléchargement terminé, vous verrez une confirmation que WordPress a été téléchargé avec succès.
Etape 2 : Générer wp-config.php
Créez le fichier de configuration en utilisant wp config create :
wp config create --dbname=wpsite_db --dbuser=wpsite_user --dbpass=securepassword123 --dbhost=localhost
Il génère un site wp-config.php complet avec les identifiants de votre base de données et les sels de sécurité générés automatiquement.
Étape 3 : Exécutez l’installation
Installez maintenant WordPress avec les détails de votre site :
wp core install --url=https://example.com --title="My New Site" --admin_user=admin --admin_password=strongpassword [email protected]
Vous verrez apparaître le message « WordPress installed successfully » et votre site sera prêt à être utilisé.
Installation multisite
Pour les réseaux WordPress multisites, utilisez la variante multisite. WP-CLI peut configurer les installations multisites avec :
wp core multisite-install --url=https://example.com --title="My Network" --admin_user=admin --admin_password=strongpassword [email protected]
Gérer les thèmes avec WP-CLI
WP-CLI gère toutes les opérations relatives aux thèmes sans nécessiter d’accès au tableau de bord d’administration de WordPress. Vous pouvez lister, installer, activer, mettre à jour et supprimer des thèmes directement depuis votre terminal.
Liste des thèmes installés
Pour voir tous les thèmes actuellement installés :
wp theme list
Exemple de sortie :
| nom | statut | mettre à jour | version |
|---|---|---|---|
| vingt-deux vingt-quatre | actif | none | 1.0 |
| vingt-trois | inactif | none | 1.2 |
| astra | inactif | disponible | 4.5.0 |
Activation d’un thème
Passez à un autre thème :
wp theme activate astra
Cette opération modifie immédiatement le thème actif. Le retour à un thème par défaut est utile pour résoudre les problèmes liés au thème :
wp theme activate twentytwentyfour
Installation de nouveaux thèmes
Installez un thème à partir du dépôt WordPress.org :
wp theme install astra
Installez et activez en une seule commande :
wp theme install astra --activate
Mise à jour des thèmes
Mise à jour d’un thème spécifique :
wp theme update astra
Ou mettez à jour tous les thèmes en même temps :
wp theme update --all
Suppression de thèmes
Supprimez un thème dont vous n’avez plus besoin :
wp theme delete twentytwentythree
Gérer les plugins avec WP-CLI
C’est dans la gestion des plugins que WP-CLI permet de gagner le plus de temps. Vous pouvez effectuer des opérations en masse qui prendraient des dizaines de clics dans le tableau de bord.
Lister les plugins
wp plugin list
Exemple de sortie :
| nom | statut | mettre à jour | version |
|---|---|---|---|
| woocommerce | actif | none | 8.5.1 |
| yoast-seo | actif | disponible | 21.0 |
| élémentaire | inactif | none | 3.18.0 |
Installation des plugins
Installez un plugin par son nom :
wp plugin install woocommerce
Installez et activez :
wp plugin install yoast-seo --activate
Activation et désactivation de
Activez un plugin :
wp plugin activate elementor
Désactiver un plugin (utile pour le débogage) :
wp plugin deactivate elementor
Désactivez tous les plugins à la fois (ce qui vous permet de déboguer l’écran blanc de la mort) :
wp plugin deactivate --all
Mise à jour des plugins
Mettez à jour un plugin spécifique :
wp plugin update yoast-seo
Mettez à jour tous les plugins :
wp plugin update --all
Vous pouvez également exclure des plugins spécifiques d’une mise à jour groupée :
wp plugin update --all --exclude=woocommerce
Mise à jour et réparation du noyau de WordPress
Maintenir WordPress à jour est essentiel pour la sécurité. WP-CLI rend ce processus transparent et contrôlable.
Vérification des mises à jour
wp core check-update
Mise à jour de WordPress
Mise à jour vers la dernière version :
wp core update
Après une mise à jour du noyau, il est conseillé de mettre à jour le schéma de la base de données :
wp core update-db
Vérification des sommes de contrôle
Si vous pensez que votre site a été piraté, vous pouvez vérifier que les fichiers principaux n’ont pas été modifiés :
wp core verify-checksums
Il compare vos fichiers avec les sommes de contrôle du dépôt officiel de WordPress.
Réinstallation du noyau
Si les fichiers sont corrompus, vous pouvez forcer une réinstallation sans affecter votre contenu :
wp core download --force --skip-content
Gestion du contenu, des utilisateurs et de la base de données
WP-CLI vous permet d’interagir directement avec les données de votre site.
Gestion des utilisateurs
Liste des utilisateurs :
wp user list
Créez un nouvel administrateur :
wp user create newadmin [email protected] --role=administrator --user_pass=securepass123
Mettre à jour le mot de passe d’un utilisateur :
wp user update 1 --user_pass=newpassword
Supprimer un utilisateur et réaffecter son contenu :
wp user delete 5 --reassign=1
Opérations sur les bases de données
Exporter la base de données vers un fichier :
wp db export backup.sql
Importer une base de données à partir d’un fichier :
wp db import backup.sql
Optimisez la base de données :
wp db optimize
Ouvrez une console MySQL directement connectée à votre base de données WordPress :
wp db cli
Rechercher et remplacer (la bonne méthode)
Déplacer manuellement un site WordPress vers un nouveau domaine est risqué car les données sont souvent sérialisées dans la base de données. Une simple recherche et un remplacement SQL casseront les widgets et les options du thème. WP-CLI gère correctement la sérialisation.
Recherche-remplacement standard
wp search-replace 'http://old-domain.com' 'https://new-domain.com'
Essai à blanc (aperçu)
Vérifiez toujours ce qui va changer avant d’exécuter la commande :
wp search-replace 'http://old-domain.com' 'https://new-domain.com' --dry-run
Exportation avec remplacement
Vous pouvez exporter une base de données avec les remplacements effectués dans le fichier, sans toucher à la base de données active :
wp search-replace 'old.com' 'new.com' --export=migrated-db.sql
Maintenance avancée : Cron et cache d’objets
Gestion des tâches Cron
Affichez les événements programmés :
wp cron event list
Exécutez immédiatement tous les événements cron prévus :
wp cron event run --due-now
Gestion des transitoires et du cache
Effacez le cache des objets :
wp cache flush
Supprimez tous les transitoires expirés :
wp transient delete --expired
Automatiser des tâches avec des scripts
Vous pouvez combiner les commandes WP-CLI dans des scripts Bash pour une maintenance automatisée.
Exemple : Script de maintenance hebdomadaire
Créez un fichier nommé maintain.sh:
#!/bin/bash
# Update everything
wp core update
wp core update-db
wp plugin update --all
wp theme update --all
# Cleanup
wp transient delete --expired
wp cache flush
wp db optimize
echo "Maintenance complete."
Rendez-le exécutable (chmod +x maintain.sh) et exécutez-le pour effectuer une maintenance complète du site en quelques secondes.
Utiliser WP-CLI à distance via SSH
Vous n’avez pas besoin de vous connecter au serveur pour exécuter des commandes si vous configurez des alias.
Dans votre fichier local wp-cli.yml:
@prod:
ssh: [email protected]/var/www/html
@dev:
ssh: [email protected]/var/www/html
Vous pouvez maintenant exécuter des commandes sur le serveur distant à partir de votre machine locale :
wp @prod plugin list
wp @dev core version
Meilleures pratiques
- Sauvegardez toujours : Avant d’exécuter des mises à jour en masse ou des commandes de recherche-remplacement, exécutez
wp db export. - Utilisez Dry Run : Pour la recherche-remplacement, utilisez toujours d’abord
--dry-run. - Ne vous exécutez pas en tant que root : WP-CLI vous avertit si vous vous exécutez en tant que root. Il est plus sûr de le faire en tant qu’utilisateur du serveur web (par exemple,
www-data) ou de votre compte utilisateur spécifique. - Testez sur le site d’essai : Utilisez WP-CLI pour cloner votre site de production sur le site d’essai, tester vos scripts de mise à jour sur ce site, puis les appliquer à la production.
Conclusion
WP-CLI transforme la gestion de WordPress d’une série de clics en opérations rationalisées et scriptables. En commençant par des commandes simples comme la vérification des versions et la liste des plugins, vous posez les bases d’une automatisation avancée. Intégrer WP-CLI dans votre flux de travail aujourd’hui vous permettra d’économiser d’innombrables heures sur vos projets WordPress.