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ésor­mais com­ment vous connec­ter en SSH à votre héber­ge­ment o2switch, que ce soit en uti­li­sant le ter­mi­nal inté­gré au cPa­nel, avec une connexion simple ou une connexion plus sécu­ri­sée avec une clé SSH.

Main­te­nant que vous êtes « dans le ter­mi­nal », que pou­vez-vous faire exac­te­ment ? Et sur­tout, com­ment tirer par­ti de cette connexion pour inter­ve­nir rapi­de­ment et effi­ca­ce­ment sur votre site Word­Press sans pas­ser par l’interface d’administration ?

C’est là qu’intervient WP-CLI, l’interface en ligne de com­mande dédiée à Word­Press. Cet outil vous per­met de gérer votre site par des lignes de com­mande : ins­tal­ler une exten­sion, vider le cache, mettre à jour Word­Press ou créer un uti­li­sa­teur, le tout en quelques frappes clavier.

Mais avant d’entrer dans le monde de WP-CLI, pre­nons un moment pour reve­nir sur les bases de la ligne de com­mande. Car WP-CLI ne vit pas tout seul : il s’utilise dans un ter­mi­nal, avec les mêmes règles que les com­mandes Linux clas­siques, qui elles aus­si peuvent vous être d’une grande uti­li­té. Un petit rap­pel ne sera donc pas de trop, même si nous les avons déjà briè­ve­ment évo­quées dans l’ar­ticle 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 sys­tème de fichiers, et com­ment s’y dépla­cer. Le ter­mi­nal que vous ouvrez en SSH chez o2switch vous donne accès à l’environnement Linux de votre héber­ge­ment. Voi­ci donc quelques com­mandes de base pour vous orien­ter sans vous perdre.

Se déplacer dans l’arborescence

  • pwd
    Affiche le che­min du dos­sier cou­rant (ex. : /home/votreutilisateur/public_html)
  • ls
    Liste les fichiers et dos­siers pré­sents dans le dos­sier courant.
  • cd nom_du_dossier
    Per­met d’entrer dans un dos­sier. Exemple : cd public_html
    Uti­li­sez cd .. pour remon­ter d’un niveau.
  • cd
    Uti­li­sée seule, cette com­mande vous ramène à la racine de votre hébergement.
  • clear
    Net­toie l’affichage du ter­mi­nal (pra­tique si ça devient illisible).
  • exit
    Ferme pro­pre­ment votre ses­sion SSH.

Voir ou éditer un fichier en ligne de commande

Il peut arri­ver que vous deviez consul­ter ou modi­fier un fichier sur votre héber­ge­ment (par exemple wp-config.php, .htaccess, ou un fichier .log). Voi­ci les com­mandes les plus utiles dans ces deux cas :

Lire un fichier sans le modifier

  • cat nom_du_fichier
    Affiche le conte­nu com­plet du fichier direc­te­ment dans le ter­mi­nal. Pra­tique pour les petits fichiers.
  • less nom_du_fichier
    Per­met de consul­ter un long fichier page par page. Uti­li­sez les flèches ou espace pour navi­guer, et q pour quitter.

Modifier un fichier

  • nano nom_du_fichier
    Un édi­teur simple et clair pour modi­fier un fichier en ligne de com­mande.
    Rac­cour­cis utiles : 
    • Ctrl + O : enregistrer
    • Ctrl + X : quitter
    • Ctrl + W : rechercher
  • vi nom_du_fichier
    Édi­teur plus avan­cé et puis­sant, mais avec une courbe d’apprentissage plus raide. Si vous débu­tez, res­tez sur nano.

Astuce : avant de modi­fier un fichier, pen­sez à en faire une copie avec :
cp nom_du_fichier sauvegarde_nom_du_fichier
Cela per­met de reve­nir 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 com­mande per­met de faire rapi­de­ment une sau­ve­garde, de net­toyer un réper­toire ou de réor­ga­ni­ser votre arbo­res­cence. Mais atten­tion : une erreur peut entraî­ner une sup­pres­sion irré­ver­sible, sans pas­ser par la cor­beille. Voi­ci les com­mandes à connaître, à uti­li­ser 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 :
    • Renom­mer un fichier : mv debug.log debug-ancien.log
    • Dépla­cer un fichier : mv monfichier.txt dossier/
  • rm nom_du_fichier
    Sup­prime un fichier. ⚠️ Aucune confir­ma­tion, sup­pres­sion immé­diate.
    Uti­li­sez rm -i nom_du_fichier pour for­cer une demande de confirmation.

Dossiers

  • mkdir nom_du_dossier
    Crée un nou­veau dos­sier. Exemple : mkdir sauvegardes
  • rmdir nom_du_dossier
    Sup­prime un dos­sier vide uniquement.
  • rm -r nom_du_dossier
    Sup­prime un dos­sier et tout son conte­nu. ⚠️ Com­mande dan­ge­reuse, à uti­li­ser avec beau­coup de précaution.

⚠️ Quelques conseils

  • Ne jamais lan­cer un rm -r sans être sûr du che­min visé.
  • Pour évi­ter les acci­dents, tes­tez d’abord avec des fichiers de test.
  • Faites des copies avant de modi­fier ou sup­pri­mer quoi que ce soit.

Quelques astuces utiles

  • Appuyez sur la touche Tabu­la­tion après avoir com­men­cé à taper un mot pour auto-com­plé­ter le nom d’un dos­sier ou d’un fichier.
    Par exemple : tapez cd w puis appuyez sur Tab, cela com­plé­te­ra auto­ma­ti­que­ment en cd www/.
  • Uti­li­sez les flèches haut/bas pour réuti­li­ser vos pré­cé­dentes com­mandes (gain de temps assuré).
  • S’il y a plu­sieurs élé­ments pos­sibles, appuyez deux fois sur Tab pour affi­cher la liste des suggestions.
  • Tapez commande --help (ou commande --h) pour affi­cher l’aide inté­grée.
    Exemple : wp plugin --help ou ls --help vous donnent toutes les options dis­po­nibles en français.

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

WP-CLI, pour Word­Press Com­mand Line Inter­face, est une inter­face en ligne de com­mande qui vous per­met de gérer un site Word­Press sans pas­ser par l’interface d’administration, direc­te­ment depuis le terminal.

Autre­ment dit, au lieu de vous connec­ter à /wp-login.php, d’entrer votre iden­ti­fiant, de navi­guer dans les menus… vous pou­vez taper une com­mande comme wp plugin update --all pour mettre à jour toutes vos exten­sions en quelques secondes.

Ce que WP-CLI permet de faire

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

  • Mettre à jour Word­Press, ses exten­sions et ses thèmes
  • Ins­tal­ler ou dés­ins­tal­ler un plugin
  • Gérer les uti­li­sa­teurs (ajout, sup­pres­sion, chan­ge­ment de mot de passe…)
  • Rechercher/remplacer du texte dans la base de données
  • Vider le cache, lan­cer les tâches cron
  • Expor­ter la base de données
  • Et beau­coup plus !

Bonne nou­velle pour les uti­li­sa­teurs o2switch : WP-CLI est déjà ins­tal­lé sur tous les héber­ge­ments mutua­li­sés. Vous n’avez donc rien à ins­tal­ler : une fois connec­té en SSH et pla­cé dans le bon dos­sier, vous pou­vez l’utiliser immédiatement.

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

Contrai­re­ment aux com­mandes clas­siques que vous venez de voir (ls, cd, rm…), les com­mandes wp n’agissent pas sur les fichiers ou le sys­tème Linux, mais direc­te­ment sur votre ins­tal­la­tion Word­Press.

Exemple : rm index.php sup­prime un fichier du site, tan­dis que wp plugin delete akismet sup­prime pro­pre­ment une exten­sion WordPress.

Avant de commencer

Assu­rez-vous de deux choses avant de lan­cer une com­mande WP-CLI :

  1. Vous êtes bien dans le dos­sier Word­Press, géné­ra­le­ment public_html ou www
    (tapez ls pour véri­fier, vous devez voir des fichiers ou dos­siers comme wp-config.php, wp-content, etc.)
  2. Votre com­mande com­mence bien par wp, comme dans : wp core version
  3. Si vous n’êtes pas dans le bon dos­sier 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 docu­men­té en ligne. Vous pou­vez consul­ter la docu­men­ta­tion offi­cielle ici (en anglais) : https://​deve​lo​per​.word​press​.org/​c​l​i​/​c​o​m​m​a​n​ds/

Ce site réper­to­rie toutes les com­mandes dis­po­nibles, avec des exemples concrets, leurs options, et par­fois les erreurs fré­quentes. C’est une res­source incon­tour­nable pour aller plus loin ou appro­fon­dir un point précis.

Astuce : pour toute com­mande WP-CLI, vous pou­vez aus­si ajou­ter --help pour obte­nir direc­te­ment l’aide dans votre terminal.

3. Les commandes WP-CLI les plus utiles

Main­te­nant que vous êtes prêt à uti­li­ser WP-CLI, voyons les com­mandes les plus pra­tiques pour débuter. 

Gérer WordPress

  • wp core version
    Affiche la ver­sion actuelle de Word­Press installée.
  • wp core check-update
    Véri­fie si une mise à jour de Word­Press est disponible.
  • wp core update
    Met à jour Word­Press vers la der­nière ver­sion disponible.

Gérer les extensions

  • wp plugin list
    Liste toutes les exten­sions ins­tal­lées, avec leur sta­tut (active/inactive).
  • wp plugin install nom-extension
    Ins­talle une exten­sion depuis le réper­toire offi­ciel Word­Press.
    Exemple : wp plugin install akismet
  • wp plugin activate nom-extension
    Active une extension.
  • wp plugin deactivate nom-extension
    Désac­tive une extension.
  • wp plugin delete nom-extension
    Sup­prime une extension.
  • wp plugin update --all
    Met à jour toutes les exten­sions en une seule com­mande (atten­tion 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
    Sup­prime 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 uti­li­sa­teurs du site, avec leur ID, email, rôle, etc.
  • wp user create identifiant email --role=subscriber
    Crée un nou­vel uti­li­sa­teur.
    Exemple : wp user create jean jean@example.com –role=subscriber –user_pass=motdepasse
  • wp user update ID --user_pass=nouveaumotdepasse
    Modi­fie le mot de passe d’un uti­li­sa­teur exis­tant en uti­li­sant son ID.
    Exemple : wp user update 2 --user_pass=monmotdepasse
  • wp user update email --user_pass=nouveaumotdepasse
    Modi­fie le mot de passe d’un uti­li­sa­teur exis­tant en uti­li­sant son e‑mail.
    Exemple : wp user update email@utilisateur.fr --user_pass=monmotdepasse

Atten­tion, dans WP CLI, les rôles des uti­li­sa­teurs sont en anglais. Petit tableau de rappel :

Nom du rôle (en fran­çais)Valeur WP-CLI (en anglais)Des­crip­tion
Abon­nésubscriberPeut lire les articles et modi­fier son profil.
Contri­bu­teurcontributorPeut rédi­ger et gérer ses propres articles, mais pas les publier.
AuteurauthorPeut publier et gérer ses propres articles.
Édi­teureditorPeut gérer tous les articles et pages, y com­pris ceux des autres.
Admi­nis­tra­teuradministratorA tous les droits sur le site.

Nettoyage et maintenance

  • wp cache flush
    Vide le cache natif de Word­Press (utile après des modifications).
  • wp transient delete --all
    Sup­prime tous les tran­sients (valeurs tem­po­raires en base).
  • wp cron event run --due-now
    Lance les tâches pla­ni­fié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 pos­si­bi­li­té d’interagir avec la base de don­nées en toute sim­pli­ci­té, sans avoir à pas­ser par php­MyAd­min. Vous pou­vez ain­si expor­ter, sau­ve­gar­der ou effec­tuer des rechercher/remplacer en quelques commandes.

Exporter la base de données

Pour créer une sau­ve­garde rapide de votre base de don­nées au for­mat .sql, il suf­fit de lancer :

wp db export

Le fichier sera enre­gis­tré dans le dos­sier cou­rant. Vous pou­vez aus­si spé­ci­fier un nom personnalisé :

wp db export sauvegarde-29-07.sql

Astuce : pen­sez à faire un export avant toute opé­ra­tion sen­sible, comme un search-replace.

Rechercher et remplacer dans la base

La com­mande wp search-replace per­met de modi­fier en masse une chaîne de carac­tères dans toutes les tables de la base de données.

Par exemple, pour rem­pla­cer https://ancien-domaine.fr par https://nouveau-domaine.fr voi­ci une ver­sion recom­man­dée de la com­mande search-replace, qui agit sur toutes les tables de la base de don­nées, uti­lise une méthode plus pré­cise et pré­serve les iden­ti­fiants internes (guid) :

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

Cette com­mande est puis­sante, et donc à manier avec pru­dence. Pour tes­ter l’opération : Ajou­tez --dry-run pour simu­ler les rem­pla­ce­ments sans les appli­quer :

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

Impor­tant :

  • N’oubliez pas d’exporter la base de don­nées avant d’utiliser cette commande.
  • L’option --skip-columns=guid est par­ti­cu­liè­re­ment impor­tante pour pré­ser­ver la cohé­rence des flux RSS et des iden­ti­fiants internes.

Autres commandes utiles concernant la base de données

  • wp db optimize
    Opti­mise les tables de la base de don­nées (équi­valent à l’optimisation via phpMyAdmin).
  • wp db check
    Véri­fie l’intégrité des tables.

5. Exemples concrets d’utilisation chez o2switch

Main­te­nant que vous connais­sez les prin­ci­pales com­mandes WP-CLI, voi­ci quelques cas d’usage concrets que vous pou­vez ren­con­trer sur votre héber­ge­ment o2switch. L’idée est de vous mon­trer com­ment enchaî­ner plu­sieurs com­mandes pour gagner du temps, dépan­ner un site ou auto­ma­ti­ser une tâche récurrente.

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

Vous sou­hai­tez mettre à jour Word­Press, toutes les exten­sions et les thèmes, puis vider le cache ? Voi­ci une com­mande com­plète à exé­cu­ter depuis le dos­sier racine du site (public_html) :

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

Grâce à &&, chaque com­mande ne sera exé­cu­tée que si la pré­cé­dente réus­sit. Cela évite de pour­suivre en cas d’erreur.

Atten­tion : cette com­mande est à uti­li­ser uni­que­ment si vous maî­tri­sez bien l’écosystème de votre site. Mettre à jour toutes les exten­sions et le cœur de Word­Press sans véri­fi­ca­tion préa­lable peut entraî­ner des conflits, des dys­fonc­tion­ne­ments, ou la désac­ti­va­tion d’éléments essen­tiels. Voir notre article plus com­plet sur les mises à jour de Word­Press.

Réinitialiser un mot de passe administrateur

Vous n’arrivez plus à vous connec­ter à l’admin et le lien « Mot de passe oublié » ne fonc­tionne pas ? Voi­ci 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

Rem­pla­cez 1 par l’ID réel de l’utilisateur.

Créer un compte administrateur temporaire

Utile si vous vou­lez don­ner un accès pro­vi­soire à quelqu’un (déve­lop­peur, sup­port, etc.) :

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

N’oubliez pas de sup­pri­mer ce compte une fois qu’il n’est plus nécessaire :

wp user delete support@example.com

Mettre un site en maintenance (simplement)

Vous pou­vez acti­ver le mode main­te­nance avec une seule commande :

wp maintenance-mode activate

Et le désac­ti­ver ensuite :

wp maintenance-mode deactivate

Restaurer rapidement un site en cas de souci

Si vous avez expor­té votre base de don­nées avec wp db export, vous pou­vez la réim­por­ter avec :

wp db import sauvegarde-29-07.sql

Et si vous avez cor­rom­pu les URLs de votre site, vous pou­vez 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 puis­sant. Mais comme tout outil puis­sant, il peut aus­si cau­ser des dégâts si on l’utilise sans pré­cau­tion. Voi­ci quelques conseils pour en tirer le meilleur sans mau­vaise surprise.

  • Sau­ve­gar­dez avant toute intervention.
  • Tes­tez vos com­mandes avec --dry-run si disponible.
  • Véri­fiez tou­jours avec pwd où vous êtes .
  • Si vous avez plu­sieurs fenêtre Ter­mi­nal ouvertes, vous pou­vez taper wp option get home pour connaître l’URL du site sur lequel vous intervenez.
  • On ne le redi­ra jamais assez : ne met­tez pas tout à jour sur votre site sans vérifications.
  • Lisez les mes­sages. Le ter­mi­nal vous parle. WP-CLI affiche sou­vent des aver­tis­se­ments, des sug­ges­tions ou des confir­ma­tions après l’exécution d’une com­mande. Ne les igno­rez pas.
  • En cas de doute… abs­te­nez-vous ou tes­tez sur un envi­ron­ne­ment de préproduction.
  • Consul­ter la docu­men­ta­tion offi­cielle ou deman­dez conseil.

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

Vous l’avez vu, WP-CLI per­met de faire en quelques secondes ce qui prend par­fois plu­sieurs minutes via l’interface d’administration Word­Press. C’est un outil rapide, puis­sant, et déjà dis­po­nible sur votre héber­ge­ment o2switch, sans rien avoir à installer.

Même si la ligne de com­mande peut impres­sion­ner au départ, elle devient vite un réflexe dès qu’on en com­prend les avan­tages. Que ce soit pour mettre à jour votre site, gérer vos uti­li­sa­teurs ou inter­ve­nir sur la base de don­nées, WP-CLI peut vous faire gagner un temps précieux.

Et ce n’est que la sur­face, une fois à l’aise avec les com­mandes de base, vous pour­rez explo­rer d’autres usages avan­cés comme :

  • Auto­ma­ti­ser cer­taines tâches récurrentes
  • Écrire vos propres scripts de maintenance
  • Gérer plu­sieurs sites en ligne de commande

Pre­nez le temps d’explorer les com­mandes à votre rythme, tou­jours avec pru­dence, et n’hésitez pas à consul­ter la docu­men­ta­tion offi­cielle pour aller plus loin.

4 Comments

  1. mVdC dit :

    Bon­jour,

    Pour­quoi réel­le­ment reve­nir 40 années en arrière en infor­ma­tique avec les bonnes vieilles lignes de com­mande ? C’est com­plè­te­ment désué comme sujet !

    Cor­dia­le­ment.

    • Éric Martin dit :

      Mer­ci pour votre com­men­taire et votre point de vue 🙂
      C’est vrai, la ligne de com­mande peut sem­bler dépas­sée à l’heure des inter­faces gra­phiques. Mais WP-CLI n’a rien de désuet : c’est un outil puis­sant, acti­ve­ment main­te­nu par la com­mu­nau­té Word­Press et lar­ge­ment uti­li­sé par les pros du web pour gagner un temps précieux.
      Par exemple, faire un search & replace sur toute une base de don­nées Word­Press… vous le feriez com­ment sans WP-CLI ? Dans ce genre de cas, dif­fi­cile de faire plus rapide. C’est un outil com­plé­men­taire, pas un retour en arrière 😉

  2. Emiel Boyat dit :

    Mer­ci pour l’ar­ticle, c’est très bien expliqué.

    @mVdC : WP-CLI peut aus­si être très pra­tique pour faire un script qui enchai­ne­rait plu­sieurs actions dans Word­Press par exemple. Ça per­met d’au­to­ma­ti­ser des tâches manuelles répé­ti­tives typiquement.

Laisser un commentaire

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