asset 1
asset 2
asset 3
asset 2
asset 21

WP-CLI et la ligne de commande pour WordPress

1 août 2025

Si vous avez déjà lu nos deux articles précédents, vous savez désormais comment vous connecter en SSH à votre hébergement o2switch, que ce soit en utilisant le terminal intégré au cPanel, avec une connexion simple ou une connexion plus sécurisée avec une clé SSH.

Maintenant que vous êtes « dans le terminal », que pouvez-vous faire exactement ? Et surtout, comment tirer parti de cette connexion pour intervenir rapidement et efficacement sur votre site WordPress sans passer par l’interface d’administration ?

C’est là qu’intervient WP-CLI, l’interface en ligne de commande dédiée à WordPress. Cet outil vous permet de gérer votre site par des lignes de commande : installer une extension, vider le cache, mettre à jour WordPress ou créer un utilisateur, le tout en quelques frappes clavier.

Mais avant d’entrer dans le monde de WP-CLI, prenons un moment pour revenir sur les bases de la ligne de commande. Car WP-CLI ne vit pas tout seul : il s’utilise dans un terminal, avec les mêmes règles que les commandes Linux classiques, qui elles aussi peuvent vous être d’une grande utilité. Un petit rappel ne sera donc pas de trop, même si nous les avons déjà brièvement évoquées dans l’article précédent.

1. Se repérer dans le terminal : les commandes à connaître

Avant d’utiliser WP-CLI, il faut savoir où l’on est dans le système de fichiers, et comment s’y déplacer. Le terminal que vous ouvrez en SSH chez o2switch vous donne accès à l’environnement Linux de votre hébergement. Voici donc quelques commandes de base pour vous orienter sans vous perdre.

Se déplacer dans l’arborescence

  • pwd
    Affiche le chemin du dossier courant (ex. : /home/votreutilisateur/public_html)
  • ls
    Liste les fichiers et dossiers présents dans le dossier courant.
  • cd nom_du_dossier
    Permet d’entrer dans un dossier. Exemple : cd public_html
    Utilisez cd .. pour remonter d’un niveau.
  • cd
    Utilisée seule, cette commande vous ramène à la racine de votre hébergement.
  • clear
    Nettoie l’affichage du terminal (pratique si ça devient illisible).
  • exit
    Ferme proprement votre session SSH.

Voir ou éditer un fichier en ligne de commande

Il peut arriver que vous deviez consulter ou modifier un fichier sur votre hébergement (par exemple wp-config.php, .htaccess, ou un fichier .log). Voici les commandes les plus utiles dans ces deux cas :

Lire un fichier sans le modifier

  • cat nom_du_fichier
    Affiche le contenu complet du fichier directement dans le terminal. Pratique pour les petits fichiers.
  • less nom_du_fichier
    Permet de consulter un long fichier page par page. Utilisez les flèches ou espace pour naviguer, et q pour quitter.

Modifier un fichier

  • nano nom_du_fichier
    Un éditeur simple et clair pour modifier un fichier en ligne de commande.
    Raccourcis utiles :
    • Ctrl + O : enregistrer
    • Ctrl + X : quitter
    • Ctrl + W : rechercher
  • vi nom_du_fichier
    Éditeur plus avancé et puissant, mais avec une courbe d’apprentissage plus raide. Si vous débutez, restez sur nano.

Astuce : avant de modifier un fichier, pensez à en faire une copie avec :
cp nom_du_fichier sauvegarde_nom_du_fichier
Cela permet de revenir en arrière en cas d’erreur.

Créer, déplacer ou supprimer un fichier ou un dossier

Gérer des fichiers en ligne de commande permet de faire rapidement une sauvegarde, de nettoyer un répertoire ou de réorganiser votre arborescence. Mais attention : une erreur peut entraîner une suppression irréversible, sans passer par la corbeille. Voici les commandes à connaître, à utiliser avec prudence.

Fichiers

  • cp ancien_nom nouveau_nom
    Copie un fichier. Exemple :
    cp wp-config.php wp-config-backup.php
  • mv ancien_nom nouveau_nom
    Déplace ou renomme un fichier.
    Exemples :
    • Renommer un fichier : mv debug.log debug-ancien.log
    • Déplacer un fichier : mv monfichier.txt dossier/
  • rm nom_du_fichier
    Supprime un fichier. ⚠️ Aucune confirmation, suppression immédiate.
    Utilisez rm -i nom_du_fichier pour forcer une demande de confirmation.

Dossiers

  • mkdir nom_du_dossier
    Crée un nouveau dossier. Exemple : mkdir sauvegardes
  • rmdir nom_du_dossier
    Supprime un dossier vide uniquement.
  • rm -r nom_du_dossier
    Supprime un dossier et tout son contenu. ⚠️ Commande dangereuse, à utiliser avec beaucoup de précaution.

⚠️ Quelques conseils

  • Ne jamais lancer un rm -r sans être sûr du chemin visé.
  • Pour éviter les accidents, testez d’abord avec des fichiers de test.
  • Faites des copies avant de modifier ou supprimer quoi que ce soit.

Quelques astuces utiles

  • Appuyez sur la touche Tabulation après avoir commencé à taper un mot pour auto-compléter le nom d’un dossier ou d’un fichier.
    Par exemple : tapez cd w puis appuyez sur Tab, cela complétera automatiquement en cd www/.
  • Utilisez les flèches haut/bas pour réutiliser vos précédentes commandes (gain de temps assuré).
  • S’il y a plusieurs éléments possibles, appuyez deux fois sur Tab pour afficher la liste des suggestions.
  • Tapez commande --help (ou commande --h) pour afficher l’aide intégrée.
    Exemple : wp plugin --help ou ls --help vous donnent toutes les options disponibles en français.

2. WP-CLI, c’est quoi exactement ?

WP-CLI, pour WordPress Command Line Interface, est une interface en ligne de commande qui vous permet de gérer un site WordPress sans passer par l’interface d’administration, directement depuis le terminal.

Autrement dit, au lieu de vous connecter à /wp-login.php, d’entrer votre identifiant, de naviguer dans les menus… vous pouvez taper une commande comme wp plugin update --all pour mettre à jour toutes vos extensions en quelques secondes.

Ce que WP-CLI permet de faire

WP-CLI donne accès à un grand nombre d’actions, parmi lesquelles :

  • Mettre à jour WordPress, ses extensions et ses thèmes
  • Installer ou désinstaller un plugin
  • Gérer les utilisateurs (ajout, suppression, changement de mot de passe…)
  • Rechercher/remplacer du texte dans la base de données
  • Vider le cache, lancer les tâches cron
  • Exporter la base de données
  • Et beaucoup plus !

Bonne nouvelle pour les utilisateurs o2switch : WP-CLI est déjà installé sur tous les hébergements mutualisés. Vous n’avez donc rien à installer : une fois connecté en SSH et placé dans le bon dossier, vous pouvez l’utiliser immédiatement.

WP-CLI n’est pas une commande système

Contrairement aux commandes classiques que vous venez de voir (ls, cd, rm…), les commandes wp n’agissent pas sur les fichiers ou le système Linux, mais directement sur votre installation WordPress.

Exemple : rm index.php supprime un fichier du site, tandis que wp plugin delete akismet supprime proprement une extension WordPress.

Avant de commencer

Assurez-vous de deux choses avant de lancer une commande WP-CLI :

  1. Vous êtes bien dans le dossier WordPress, généralement public_html ou www
    (tapez ls pour vérifier, vous devez voir des fichiers ou dossiers comme wp-config.php, wp-content, etc.)
  2. Votre commande commence bien par wp, comme dans : wp core version
  3. Si vous n’êtes pas dans le bon dossier vous aurez ce message :
wp core version
Error: This does not seem to be a WordPress installation.
Pass --path=`path/to/wordpress` or run `wp core download`.

Où trouver la documentation WP-CLI ?

L’outil WP-CLI est très bien documenté en ligne. Vous pouvez consulter la documentation officielle ici (en anglais) : https://developer.wordpress.org/cli/commands/

Ce site répertorie toutes les commandes disponibles, avec des exemples concrets, leurs options, et parfois les erreurs fréquentes. C’est une ressource incontournable pour aller plus loin ou approfondir un point précis.

Astuce : pour toute commande WP-CLI, vous pouvez aussi ajouter --help pour obtenir directement l’aide dans votre terminal.

3. Les commandes WP-CLI les plus utiles

Maintenant que vous êtes prêt à utiliser WP-CLI, voyons les commandes les plus pratiques pour débuter.

Gérer WordPress

  • wp core version
    Affiche la version actuelle de WordPress installée.
  • wp core check-update
    Vérifie si une mise à jour de WordPress est disponible.
  • wp core update
    Met à jour WordPress vers la dernière version disponible.

Gérer les extensions

  • wp plugin list
    Liste toutes les extensions installées, avec leur statut (active/inactive).
  • wp plugin install nom-extension
    Installe une extension depuis le répertoire officiel WordPress.
    Exemple : wp plugin install akismet
  • wp plugin activate nom-extension
    Active une extension.
  • wp plugin deactivate nom-extension
    Désactive une extension.
  • wp plugin delete nom-extension
    Supprime une extension.
  • wp plugin update --all
    Met à jour toutes les extensions en une seule commande (attention tout de même 🙂 )

Gérer les thèmes

  • wp theme list
    Liste tous les thèmes installés.
  • wp theme activate nom-theme
    Active un thème.
    Exemple : wp theme activate twentytwentyfour
  • wp theme delete nom-theme
    Supprime un thème.
  • wp theme update --all
    Met à jour tous les thèmes installés.

Gérer les utilisateurs

  • wp user list
    Affiche la liste des utilisateurs du site, avec leur ID, email, rôle, etc.
  • wp user create identifiant email --role=subscriber
    Crée un nouvel utilisateur.
    Exemple : wp user create jean jean@example.com –role=subscriber –user_pass=motdepasse
  • wp user update ID --user_pass=nouveaumotdepasse
    Modifie le mot de passe d’un utilisateur existant en utilisant son ID.
    Exemple : wp user update 2 --user_pass=monmotdepasse
  • wp user update email --user_pass=nouveaumotdepasse
    Modifie le mot de passe d’un utilisateur existant en utilisant son e-mail.
    Exemple : wp user update email@utilisateur.fr --user_pass=monmotdepasse

Attention, dans WP CLI, les rôles des utilisateurs sont en anglais. Petit tableau de rappel :

Nom du rôle (en français)Valeur WP-CLI (en anglais)Description
AbonnésubscriberPeut lire les articles et modifier son profil.
ContributeurcontributorPeut rédiger et gérer ses propres articles, mais pas les publier.
AuteurauthorPeut publier et gérer ses propres articles.
ÉditeureditorPeut gérer tous les articles et pages, y compris ceux des autres.
AdministrateuradministratorA tous les droits sur le site.

Nettoyage et maintenance

  • wp cache flush
    Vide le cache natif de WordPress (utile après des modifications).
  • wp transient delete --all
    Supprime tous les transients (valeurs temporaires en base).
  • wp cron event run --due-now
    Lance les tâches planifiées qui devraient s’exécuter maintenant.

4. WP-CLI et la base de données

L’un des grands atouts de WP-CLI, c’est la possibilité d’interagir avec la base de données en toute simplicité, sans avoir à passer par phpMyAdmin. Vous pouvez ainsi exporter, sauvegarder ou effectuer des rechercher/remplacer en quelques commandes.

Exporter la base de données

Pour créer une sauvegarde rapide de votre base de données au format .sql, il suffit de lancer :

wp db export

Le fichier sera enregistré dans le dossier courant. Vous pouvez aussi spécifier un nom personnalisé :

wp db export sauvegarde-29-07.sql

Astuce : pensez à faire un export avant toute opération sensible, comme un search-replace.

Rechercher et remplacer dans la base

La commande wp search-replace permet de modifier en masse une chaîne de caractères dans toutes les tables de la base de données.

Par exemple, pour remplacer https://ancien-domaine.fr par https://nouveau-domaine.fr voici une version recommandée de la commande search-replace, qui agit sur toutes les tables de la base de données, utilise une méthode plus précise et préserve les identifiants internes (guid) :

wp search-replace 'https://ancien-domaine.fr' 'https://nouveau-domaine.fr' --skip-columns=guid --precise --all-tables

Cette commande est puissante, et donc à manier avec prudence. Pour tester l’opération : Ajoutez --dry-run pour simuler les remplacements sans les appliquer :

wp search-replace 'https://ancien-domaine.fr' 'https://nouveau-domaine.fr' --skip-columns=guid --precise --all-tables --dry-run

Important :

  • N’oubliez pas d’exporter la base de données avant d’utiliser cette commande.
  • L’option --skip-columns=guid est particulièrement importante pour préserver la cohérence des flux RSS et des identifiants internes.

Autres commandes utiles concernant la base de données

  • wp db optimize
    Optimise les tables de la base de données (équivalent à l’optimisation via phpMyAdmin).
  • wp db check
    Vérifie l’intégrité des tables.

5. Exemples concrets d’utilisation chez o2switch

Maintenant que vous connaissez les principales commandes WP-CLI, voici quelques cas d’usage concrets que vous pouvez rencontrer sur votre hébergement o2switch. L’idée est de vous montrer comment enchaîner plusieurs commandes pour gagner du temps, dépanner un site ou automatiser une tâche récurrente.

Mettre à jour complètement un site WordPress en une ligne de commande

Vous souhaitez mettre à jour WordPress, toutes les extensions et les thèmes, puis vider le cache ? Voici une commande complète à exécuter depuis le dossier racine du site (public_html) :

wp core update && wp plugin update --all && wp theme update --all && wp cache flush

Grâce à &&, chaque commande ne sera exécutée que si la précédente réussit. Cela évite de poursuivre en cas d’erreur.

Attention : cette commande est à utiliser uniquement si vous maîtrisez bien l’écosystème de votre site. Mettre à jour toutes les extensions et le cœur de WordPress sans vérification préalable peut entraîner des conflits, des dysfonctionnements, ou la désactivation d’éléments essentiels. Voir notre article plus complet sur les mises à jour de WordPress.

Réinitialiser un mot de passe administrateur

Vous n’arrivez plus à vous connecter à l’admin et le lien « Mot de passe oublié » ne fonctionne pas ? Voici une méthode rapide en ligne de commande :

wp user list

Repérez l’ID ou le login de l’administrateur, puis :

wp user update 1 --user_pass=nouveaumotdepasse

Remplacez 1 par l’ID réel de l’utilisateur.

Créer un compte administrateur temporaire

Utile si vous voulez donner un accès provisoire à quelqu’un (développeur, support, etc.) :

wp user create support support@example.com --role=administrator --user_pass=m0tdep@ss3

N’oubliez pas de supprimer ce compte une fois qu’il n’est plus nécessaire :

wp user delete support@example.com

Mettre un site en maintenance (simplement)

Vous pouvez activer le mode maintenance avec une seule commande :

wp maintenance-mode activate

Et le désactiver ensuite :

wp maintenance-mode deactivate

Restaurer rapidement un site en cas de souci

Si vous avez exporté votre base de données avec wp db export, vous pouvez la réimporter avec :

wp db import sauvegarde-29-07.sql

Et si vous avez corrompu les URLs de votre site, vous pouvez tout remettre à plat avec un search-replace :

wp search-replace 'https://mauvaise-url.fr' 'https://bonne-url.fr' --skip-columns=guid --precise --all-tables

6. Précautions et bonnes pratiques avant d’utiliser WP-CLI

WP-CLI est un outil très puissant. Mais comme tout outil puissant, il peut aussi causer des dégâts si on l’utilise sans précaution. Voici quelques conseils pour en tirer le meilleur sans mauvaise surprise.

  • Sauvegardez avant toute intervention.
  • Testez vos commandes avec --dry-run si disponible.
  • Vérifiez toujours avec pwd où vous êtes .
  • Si vous avez plusieurs fenêtre Terminal ouvertes, vous pouvez taper wp option get home pour connaître l’URL du site sur lequel vous intervenez.
  • On ne le redira jamais assez : ne mettez pas tout à jour sur votre site sans vérifications.
  • Lisez les messages. Le terminal vous parle. WP-CLI affiche souvent des avertissements, des suggestions ou des confirmations après l’exécution d’une commande. Ne les ignorez pas.
  • En cas de doute… abstenez-vous ou testez sur un environnement de préproduction.
  • Consulter la documentation officielle ou demandez conseil.

7. Conclusion : WP-CLI, une nouvelle façon de gérer WordPress

Vous l’avez vu, WP-CLI permet de faire en quelques secondes ce qui prend parfois plusieurs minutes via l’interface d’administration WordPress. C’est un outil rapide, puissant, et déjà disponible sur votre hébergement o2switch, sans rien avoir à installer.

Même si la ligne de commande peut impressionner au départ, elle devient vite un réflexe dès qu’on en comprend les avantages. Que ce soit pour mettre à jour votre site, gérer vos utilisateurs ou intervenir sur la base de données, WP-CLI peut vous faire gagner un temps précieux.

Et ce n’est que la surface, une fois à l’aise avec les commandes de base, vous pourrez explorer d’autres usages avancés comme :

  • Automatiser certaines tâches récurrentes
  • Écrire vos propres scripts de maintenance
  • Gérer plusieurs sites en ligne de commande

Prenez le temps d’explorer les commandes à votre rythme, toujours avec prudence, et n’hésitez pas à consulter la documentation officielle pour aller plus loin.

4 Comments

  1. mVdC dit :

    Bonjour,

    Pourquoi réellement revenir 40 années en arrière en informatique avec les bonnes vieilles lignes de commande ? C’est complètement désué comme sujet !

    Cordialement.

    • Éric Martin dit :

      Merci pour votre commentaire et votre point de vue 🙂
      C’est vrai, la ligne de commande peut sembler dépassée à l’heure des interfaces graphiques. Mais WP-CLI n’a rien de désuet : c’est un outil puissant, activement maintenu par la communauté WordPress et largement utilisé par les pros du web pour gagner un temps précieux.
      Par exemple, faire un search & replace sur toute une base de données WordPress… vous le feriez comment sans WP-CLI ? Dans ce genre de cas, difficile de faire plus rapide. C’est un outil complémentaire, pas un retour en arrière 😉

  2. Emiel Boyat dit :

    Merci pour l’article, c’est très bien expliqué.

    @mVdC : WP-CLI peut aussi être très pratique pour faire un script qui enchainerait plusieurs actions dans WordPress par exemple. Ça permet d’automatiser des tâches manuelles répétitives typiquement.

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *