WP-CLI est un ensemble de commandes pour administrer et gérer WordPress.
Il se présente sous la forme de commandes WP qui vous permet de gérer entièrement WordPress.
Cela peut aller àa la mise à jour de WordPress et ses extensions, à la gestion des utilisateurs, des commentaires ou widget.
Voici un guide et tutoriel complet pour utiliser WP-CLI WordPress avec énormément d’exemples de commandes WP.
Table des matières
Comment installer WP-CLI
- Connectez-vous en SSH à votre serveur dédié ou VPS
- Télécharger wp-cli avec curl :
curl -O https://raw.githubusercontent.com/wp-cli/builds/gh-pages/phar/wp-cli.phar
- Puis copiez le dans le dossier des exécutables :
chmod +x wp-cli.phar
sudo mv wp-cli.phar /usr/local/bin/wp
- Puis vérifiez qu’il détecte bien votre installation WordPress. Si le chemin de WordPress n’est pas détecté
cd /var/www/html/wordpress #mettre le chemin de votre site WordPress
wp --info
Si vous n’êtes pas dans le répertoire de votre WordPress, vous pouvez spécifier le dossier WordPress à l’aide du paramètre –path=
Cela est utile dans le cas où vous êtes en multisites pour spécifier avecquel WordPress travailler.
Tout est prêt pour utiliser WP-CLI.
Pour obtenir la liste des commandes (voir aussi le tableau en fin d’article) :
wp help
Pour obtenir l’aide d’une commande spécifique :
wp help <commande>
Par exemple pour afficher l’aide de la commande plugin :
wp help plugin
wp help plugin delete
Enfin pour obtenir l’aide d’une commande plus prés
Comment utiliser WP-CLI WordPress avec des exemples de commandes WP
Mettre à jour WP-CLI
Vérifier si WP-CLI est à la dernière version :
wp cli check-update
Pour mettre à jour WP-CLI :
wp cli update
Mettre à jour WordPress ou les extensions
Pour vérifier si WordPress est à jour :
wp core check-update
Si WordPress est à jour, WP-CLI retourne :
Success: WordPress is at the latest version.
Sinon il vous indique la mise à jour et le type (major, minor)
Pour mettre à jour WordPress :
wp core update
Vérifier si des mises à jour d’extensions sont disponibles et les installer :
wp plugin update --all
A partir de là, vous pouvez mettre à jour WordPress automatiquement par l’ajour de ses commandes dans un cron.
Installer, supprimer, activer des extensions
Lister les extensions WordPress installées :
wp plugin list
Pour ajouter une extension WordPress en ligne de commandes :
wp plugin install <nom de l'extension>
Puis pour activer l’extension en ligne de commandes :
wp plugin activate <nom de l'extension>
Pour désactiver une extension :
wp plugin deactivate hello
Pour supprimer une extension :
wp plugin delete <nom de l'extension>
Installer, supprimer, activer des thèmes
Ajouter, supprimer des utilisateurs
Pour créer un utilisateur Kevin avec l’adresse email [email protected] et le rôle d’auteur :
wp user create Kevin [email protected] --role=author
WP-CLI retourne alors le mot de passe de connexion et son identifiant.
Le paramètre –role permet de définir les permissions, la liste étant Administrator, Editor, Author, Contributor, Subscriber.
Plus de détails : https://fr.wordpress.org/support/article/roles-and-capabilities/
Pour lister les utilisateurs WordPress :
wp user list
Pour mettre à jour les informations d’un utilisateur, par exemple changer son pseudo et le mot de passe :
wp user update 2 --display_nameSuperKevin --user_pass=SuperMotdePasse@12345
Pour accorder les privilèges auteur à l’utilisateur 2 :
wp user add-role 2 author
Pour ne donner que les privilèges auteur à l’utilisateur 2 :
wp user set-role 2 author
Pour mettre à jour l’utilisateur 2 :
wp user update 2 --display_name=SuperKevin --user_pass=SuperMotdePasse@12345
Pour supprimer les privilèges auteur :
wp user remove-role 2 author
Pour supprimer l’utilisateur 2 et rediriger les articles vers l’utilisateur 1 :
wp user delete 2 --reassign=1
Il existe aussi la commande super-admin qui fonctionne de la même manière (list, add, remove) pour gérer les multi-sites WordPress.
Pour lister les super-utilisateurs :
wp super-admin list
Pour accorder les privilèges super-administrateurs à l’utilisateur.
wp super-admin add superadmin2
Pour supprimer l’utilisateur superadmin 2.
wp super-admin remove superadmin2
Créer, supprimer des articles ou pages
Pour créer l’article avec le titre “démo de création d’article” :
wp post create --post_type=post --post_title="démo de création d'article"
Si vous désirez créer une page, il faut utiliser l’option –post_type=pages
Pour déplacer un article dans la corbeille en ligne de commandes :
wp post update 123 --post_status=draft
Créer un poste et le publier dans un horaire dans le futur :
wp post create --post_type=page --post_title='A future post' --post_status=future --post_date='2020-12-01 07:00:00'
Pour créer un article avec du contenu du fichier post-content.txt dans les catégories 201, 345 :
wp post create ./post-content.txt --post_category=201,345 --post_title="démo de création d'article"
Créez un message avec plusieurs valeurs méta0
wp post create --post_title='A post' --post_content='Just a small post.' --meta_input='{"key1":"value1","key2":"value2"}'
Créez un message en double à partir des messages existants.
wp post create --from-post=123 --post_title='Different Title'
Pour supprimer l’article avec l’ID 123
wp post delete 123
Activer, désactiver le mode de maintenance
Pour activer le mode de maintenance :
wp maintenance-mode activate
Pour désactiver le mode de maintenance :
wp maintenance-mode deactivate
Pour vérifier le statut :
wp maintenance-mode status
La liste des commandes WP-CLI
Commandes | Description |
cache | ajouter, supprimer, récupérer et vider le cache WP |
cap | ajouter, supprimer et répertorier les capacités d’un rôle d’utilisateur |
CLI | avis des informations WP-CLI actuelles, vérifie des mises à jour ou des vues des alias définis |
comments | creates, updates, deletes, and moderates comments |
config | génère et lit le fichier wp-config.php |
core | téléchargements de base, installations, mises à jour et gère une installation WordPress |
cron | teste, court et supprime les événements WP-Cron; gère les horaires WP-CRON |
DB | effectue des opérations de base de la base de données à l’aide des informations d’identification stockées dans WP-CONFIG.PHP |
eval | exécute le code PHP arbitraire |
Eval-File | charge et exécute un fichier PHP |
embed | Inspecte les fournisseurs de l’OEMBED, efface les cache de l’intégration, etc |
export | exporte le contenu WordPress vers un fichier WXR |
help | obtenir de l’aide sur WP-CLI ou sur une commande spécifique |
i18n | fournit des outils d’internationalisation pour les projets WordPress |
import | importe du contenu à partir d’un fichier WXR donné |
language | installe, active et gère des packs de langue |
maintenance-mode | active, désactive ou vérifie l’état du mode de maintenance d’un site |
thumbnails | importe des fichiers comme pièces jointes, régénère les vignettes ou les listes tailles d’images enregistrées |
menu | répertorie, crée, attribue et supprime les menus de navigation du thème actif. |
network | réseau effectuer des opérations à l’échelle du réseau |
option | récupère et définit les options du site, y compris le plugin et les paramètres WordPress. |
package | Listes de packages, installe et supprime les packages WP-CLI. |
plugin | gère des plugins, y compris des installations, des activations et des mises à jour. |
post | gère des articles, du contenu et de Meta |
post-type | récupère des détails sur les types de poste enregistrés du site. |
rewrite | Réécrire répertorie ou afflit les règles de réécriture du site, met à jour la structure Permalink |
role | gère les rôles utilisateur, y compris la création de nouveaux rôles et la réinitialisation des valeurs par défaut |
scaffold | génère du code pour les types de poste, les taxonomies, les plugins, les thèmes d’enfants, etc |
search-replace | les recherches / remplace les chaînes dans la base de données. |
server | lance le serveur Web intégré de PHP pour une installation WordPress spécifique |
shell | ouvre une console PHP interactive pour exécuter et tester le code PHP |
sidebar | répertorie les barres latérales enregistrées |
site | crée, supprime, vide, modère et répertorie un ou plusieurs sites sur une installation multisite. |
super-admin | listes, ajoute ou supprime les utilisateurs Super Admin sur une installation multisite |
taxonomy | récupère des informations sur les taxonomies enregistrées |
term | gère les termes de la taxonomie et le terme méta, avec des commandes Créer, supprimer et List |
theme | gère des thèmes, y compris des installations, des activations et des mises à jour |
transient | transitoires, obtient et supprime les entrées dans le cache transitoire WordPress |
user | gère les utilisateurs, ainsi que leurs rôles, leurs capacités et leurs méta |
widget | gère les widgets, y compris l’ajout et les déplacer dans les barres latérales |
Liens
- Désinfecter un site WordPress
- Pourquoi et comment les hackers piratent un site WordPress
- Wordfence : Protéger WordPress avec un Firewall et scan anti-malware
- Wordfence : Supprimer les backdoor, web shells, malwares de WordPress
- 8 extensions de sécurité pour protéger WordPress des malwares
- Comment détecter les PHP Backdoor ou Web Shells
- Faire un audit de sécurité WordPress
- Website File Changes Monitor : Surveiller les modifications de WordPress
- CDN : optimisation et sécurité WordPress
- Sucuri WordPress Security Plugin : sécurité et protection
- Website File Changes Monitor : Surveiller les modifications de WordPress