Menu
Plugin

Come usare WP-CLI per gestire WordPress da riga di comando

Gianluca Gentile · · 5 min di lettura

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.

Condividi: