Voyez comment vous pouvez effectuer des tâches WordPress courantes plus rapidement ou même les automatiser en utilisant la puissance de bash.
wp-cli est un outil de contrôle de WordPress via une fenêtre de console.
Lorsque l'interface d'administration de WordPress est si belle et facile à utiliser, la question naturelle est de savoir pourquoi utiliser une interface de ligne de commande.?
Il y a deux principales raisons:
Dans ce tutoriel, je vais vous donner un aperçu de ce que wp-cli est bon pour.
Avant de l'utiliser, vous aurez besoin de quelques choses:
Shell de type UNIX - Si vous utilisez un Mac ou Linux, vous pouvez exécuter wp-cli sur votre ordinateur local. Si vous utilisez Windows, vous pouvez vous connecter à votre serveur Linux via Putty et y installer wp-cli..
PHP 5.3+ et l'utilitaire php-cli - Vous pouvez voir si vous en avez en exécutant la commande suivante:
php -v
Git - C'est ce que nous allons utiliser pour installer et mettre à jour wp-cli.
Le projet wp-cli en est encore à ses balbutiements. Le meilleur moyen de rester au fait des dernières versions est de le cloner à partir de github:
git clone --recurse-submodules git: //github.com/andreascreten/wp-cli.git ~ / git / wp-cli cd ~ / git / wp-cli sudo utils / build-dev
~ / git / wp-cli
est le répertoire où wp-cli sera installé. N'hésitez pas à le changer pour ce que vous voulez.
C'est tout. Maintenant le wp
commande devrait être disponible:
cd / var / www / public_html / wordpress wp
Si vous souhaitez utiliser wp-cli sur une installation multisite, vous devrez choisir le blog sur lequel vous souhaitez opérer:
wp --blog = myblog.mynetwork.com
Pour éviter de devoir passer le --Blog
paramètre pour chaque commande, vous pouvez le stocker dans un fichier spécialement nommé:
echo 'myblog.mynetwork.com'> wp-cli-blog
wp-cli lira ce fichier s'il n'y a pas --Blog
paramètre.
Tout d’abord, voyons avec quelle version de WordPress nous avons affaire:
wp core version --extra
Pour effectuer une mise à jour, il vous suffit d'écrire:
wp core update
Voyons quels plugins nous avons installés:
statut du plugin wp
Euh, il semble qu'une mise à jour soit disponible pour Akismet. Installons-le:
mise à jour du plugin wp akismet
Maintenant, installons et activons un plugin de wordpress.org:
plugin wp installer google-sitemap-generator --activer
De plus, vous pouvez installer la version de développement d'un plugin:
plugin wp installer google-sitemap-generator --activate --dev
Oh, et regardez, il y a une nouvelle commande disponible maintenant:
wp google-sitemap
Nous pouvons rapidement passer d’un plugin d’actif à inactif et inversement:
plugin wp bascule google-sitemap-generator
C'est un bon moyen de déboguer les hooks d'activation.
De même, vous pouvez exécuter la procédure de désinstallation d'un plugin sans supprimer ses fichiers:
wp plugin désinstaller google-sitemap-generator
Et, bien sûr, vous pouvez également supprimer le plugin:
wp plugin supprimer google-sitemap-generator
Nous avons aussi quelques commandes pour travailler avec des thèmes:
statut de thème wp
Contrairement aux plugins, vous ne pouvez utiliser qu'un seul thème à la fois. L'activation d'un thème "désactivera" automatiquement le précédent:
thème wp activer vingt
Et voici une petite astuce pour aller dans le répertoire d'un thème particulier:
cd $ (chemin du thème wp twentyeleven)
Si vous écrivez un thème et que vous souhaitez styler la pagination, vous aurez besoin de beaucoup de messages. Voici le moyen le plus rapide de les obtenir:
wp générer des messages --count = 1000
Si vous souhaitez attribuer un style à une liste d'utilisateurs, vous pouvez en générer également:
wp générer des utilisateurs --role = auteur
Vous pouvez également créer des utilisateurs individuels:
utilisateur wp create stan [email protected]
Vous voudrez peut-être exporter périodiquement votre contenu dans un fichier WXR.
wp export --path =. / --user = admin
Vous pouvez transmettre des paramètres supplémentaires pour limiter le contenu exporté, tels que --Catégorie
, --date de début
etc.
Il y a des commandes simples pour CRUD opérations sur options:
option wp obtenir permalink_structure option wp ajouter barre foo option wp supprimer foo
Vous ne voulez pas le faire régulièrement, car la plupart des options sont limitées à certaines valeurs. Mais cela peut être utile dans les scripts.
Si vous voulez faire une sauvegarde de la base de données, écrivez simplement:
wp db dump
Ou peut-être avez-vous besoin de faire une recherche rapide pour savoir quand le dernier message a été publié:
wp db query "SELECT MAX (post_date) from wp_posts WHERE post_type = 'post' AND post_status = 'publish'"
Ouvrir une session interactive MySQL pour effectuer des diagnostics est tout aussi simple:
wp db cli
Parfois, la seule façon de dire à wp-cli ce que vous voulez est de le décrire en code PHP:
wp fichier eval do-my-blanchisserie.php
Avec la commande ci-dessus, wp-cli va d'abord charger WordPress, puis charger et exécuter votre fichier PHP.
Ceci est utile dans les scripts de déploiement ou pour d'autres actions complexes qui ne peuvent pas être réalisées à l'aide de commandes intégrées..
Vous pouvez également passer du code PHP en ligne:
wp eval 'echo WP_CONTENT_DIR;'
Croyez-le ou non, wp-cli est principalement écrit en PHP. Chaque commande est une classe, chaque méthode représentant une sous-commande..
La chose intéressante est que vous pouvez créer votre propre classe, la placer dans un plugin et wp-cli la reconnaîtra automatiquement comme l'une des siennes. Un tutoriel détaillé sur la création de commandes est disponible dans le wiki du projet..
J'espère vous avoir convaincu d'essayer au moins wp-cli. Si vous avez trouvé un bogue ou si vous avez une demande de fonctionnalité, envisagez d'ouvrir un problème..
Vous avez un cas d'utilisation intéressant pour wp-cli? S'il vous plaît partagez-le dans les commentaires ci-dessous.