Come usare WP-CLI per gestire WordPress da riga di comando
WP-CLI è lo strumento ufficiale per gestire WordPress dalla riga di comando. Ti permette di aggiornare plugin, gestire utenti, eseguire operazioni sul database e molto altro senza mai aprire il browser. Per chi gestisce più siti o vuole automatizzare le operazioni di manutenzione, WP-CLI è indispensabile. In questa guida ti spiego come installarlo e usare i comandi più utili.
Perché usare WP-CLI
La bacheca di WordPress funziona bene per le operazioni quotidiane, ma ha dei limiti. Aggiornare 20 plugin uno alla volta dal browser è lento e soggetto a timeout. Eseguire operazioni in blocco sul database richiede phpMyAdmin. Gestire più siti significa fare login su ogni bacheca separatamente. WP-CLI risolve tutti questi problemi: un singolo comando aggiorna tutti i plugin, un altro esegue operazioni sul database in millisecondi, e puoi gestire decine di siti dallo stesso terminale.
Installare WP-CLI
L’installazione è semplice se hai accesso SSH al server. Esegui questi comandi:
curl -O https://raw.githubusercontent.com/wp-cli/builds/gh-pages/phar/wp-cli.phar chmod +x wp-cli.phar mv wp-cli.phar /usr/local/bin/wp
Verifica l’installazione con wp –version. Se tutto è corretto, vedrai la versione di WP-CLI. Molti hosting provider hanno WP-CLI già preinstallato: prova a digitare wp –version prima di installarlo manualmente.
Comandi essenziali per la gestione dei plugin
La gestione dei plugin è una delle funzionalità più usate di WP-CLI:
# Elencare tutti i plugin con il loro stato wp plugin list # Aggiornare tutti i plugin wp plugin update --all # Aggiornare un plugin specifico wp plugin update woocommerce # Installare e attivare un plugin wp plugin install wordfence --activate # Disattivare un plugin wp plugin deactivate contact-form-7 # Eliminare un plugin wp plugin delete hello-dolly
L’aggiornamento via WP-CLI è più affidabile di quello via browser perché non dipende dai timeout HTTP. Per siti con molti plugin, un singolo wp plugin update –all risparmia minuti di clic manuali.
Gestire temi e aggiornamenti del core
WP-CLI gestisce anche i temi e il core di WordPress con la stessa semplicità:
# Aggiornare il core di WordPress wp core update # Aggiornare il database dopo un aggiornamento del core wp core update-db # Elencare i temi installati wp theme list # Attivare un tema wp theme activate twentytwentyfive # Verificare la versione di WordPress wp core version
Operazioni sul database
WP-CLI è particolarmente potente per le operazioni sul database. Il comando wp search-replace è forse il più utile: esegue una ricerca e sostituzione su tutto il database, gestendo correttamente anche i dati serializzati (cosa impossibile con una semplice query SQL):
# Cambiare URL del sito (es. dopo migrazione) wp search-replace 'http://vecchiodominio.com' 'https://nuovodominio.com' # Simulare senza modificare (dry-run) wp search-replace 'http://vecchiodominio.com' 'https://nuovodominio.com' --dry-run # Esportare il database wp db export backup.sql # Importare un database wp db import backup.sql # Ottimizzare le tabelle del database wp db optimize # Riparare le tabelle del database wp db repair
Il search-replace con gestione dei dati serializzati è fondamentale durante le migrazioni: senza WP-CLI dovresti usare strumenti esterni come Better Search Replace o script personalizzati.
Gestire gli utenti
WP-CLI semplifica la gestione degli utenti, specialmente per operazioni in blocco o di emergenza:
# Elencare gli utenti wp user list # Creare un nuovo utente admin wp user create mario mario@esempio.com --role=administrator --user_pass=PasswordSicura123 # Cambiare la password di un utente wp user update 1 --user_pass=NuovaPassword456 # Eliminare un utente (riassegnare i contenuti all'utente ID 1) wp user delete 5 --reassign=1
Il comando per creare un utente admin è particolarmente utile quando sei bloccato fuori dalla bacheca: puoi creare un nuovo admin via SSH e usarlo per accedere al sito.
Svuotare la cache e gestire i transient
WP-CLI offre comandi dedicati per la gestione della cache e dei transient, dati temporanei che i plugin accumulano nel database:
# Svuotare la object cache wp cache flush # Eliminare tutti i transient scaduti wp transient delete --expired # Eliminare tutti i transient (anche non scaduti) wp transient delete --all # Rigenerare i permalink wp rewrite flush
La pulizia dei transient è importante per le prestazioni: plugin mal programmati possono accumulare migliaia di transient nella tabella wp_options, rallentando il database. Con un singolo comando puoi eliminarli tutti.
Automatizzare con script e cron
La vera potenza di WP-CLI sta nell’automazione. Puoi creare script bash che eseguono operazioni di manutenzione programmate:
#!/bin/bash # Script di manutenzione settimanale cd /var/www/html # Aggiornare tutti i plugin wp plugin update --all # Aggiornare il core wp core update wp core update-db # Pulire i transient wp transient delete --expired # Ottimizzare il database wp db optimize echo "Manutenzione completata: $(date)"
Aggiungi questo script al crontab per eseguirlo automaticamente ogni settimana. Ricorda di specificare il percorso completo dell’eseguibile wp nel crontab e di usare il flag –path se necessario.
Serve aiuto con la gestione del sito?
Se vuoi automatizzare la manutenzione del tuo sito WordPress o hai bisogno di operazioni avanzate sul database, il team di SoccorsoWP può configurare script di manutenzione personalizzati per il tuo sito. Apri un ticket e semplifica la gestione del tuo WordPress.