Autant pour Drupal, l'outil drush est très connu et permet de simplifier et d'accélérer les choses (installation de modules, mises à jour, nettoyage du cache), autant il semble que l'utilisation de la ligne de commande pour Wordpress n'est pas très répandu.
Cependant, il existe un outil wp-cli, qui fournit des fonctionnalités relativement semblables.
Je ne reprends pas ici toutes les commandes, vous pouvez vous référer au site d'origine.
Installation
L'installation (et l'utilisation) nécessite bien sûr d'avoir un accès au serveur en ligne de commande. Il n'est donc pas possible de l'utiliser sur un hébergement mutualisé.
On installe via un fichier phar curl -O https://raw.githubusercontent.com/wp-cli/builds/gh-pages/phar/wp-cli.phar chmod +x wp-cli.phar sudo mv wp-cli.phar /usr/local/bin/wp-cli
Note : dans la documentation "officielle", ils utilisent le raccourci wp. Je préfère wp-cli. Libre à vous d'adapter le nom de l'exécutable...
Utilisation
Voici les commandes que j'utilise le plus. Il y en a d'autres. On peut se référer à la documentation.
Vérifier les versions
Pour le Core : wp-cli core version
Exemple :
wp-cli core version 4.8.1
On peut aussi vérifier si une mise à jour du Core est disponible, avec wp-cli core check-update :
wp-cli core check-update Success: WordPress is at the latest version.
Pour les Plugins : wp-cli plugin status
Exemple :
wp-cli plugin status 7 installed plugins: A advanced-wp-columns 2.0.6 A column-shortcodes 1.0 A contact-form-7 4.9 A ml-slider 3.5.1 A responsive-lightbox 1.7.2 A shortcodes-ultimate 4.10.2 UA wordpress-seo 4.9 Legend: A = Active, U = Update Available
Lancer les mises à jour
Pour le Core, on utlise
wp-cli core update
Pour les plugins, c'est
wp-cli update [nom du plugin]
Exemple :
wp-cli plugin update contact-form-7 Activation du mode maintenance... Téléchargement de la mise à jour depuis https://downloads.wordpress.org/plugin/contact-form-7.4.9.zip... Using cached file '/www/toto/.wp-cli/cache/plugin/contact-form-7-4.9.zip'... Décompression de la mise à jour... Installation de la dernière version... Retrait de l’ancienne version de l’extension... L’extension a bien été mise à jour. Désactivation du mode maintenance... +----------------+-------------+-------------+---------+ | name | old_version | new_version | status | +----------------+-------------+-------------+---------+ | contact-form-7 | 4.8 | 4.9 | Updated | +----------------+-------------+-------------+---------+ Success: Updated 1 of 1 plugins.
Conclusion
Cet utilitaire permet de se simplifier la vie, et participe également à la sécurisation des sites wordpress. En effet, on peut avoir des répertoires qui appartiennent à un utilisateur différent de celui qui fait tourner le site (www-data généralement).
En mettant des droits d'accès en lecture seule pour www-data, sur les répertoires des modules et du core, on limite les risques d'attaques.