Introduzione a WP CLI

Introduzione a WP CLI

Il mondo che ci circonda ci riempie di interfacce grafiche, dal bancomat alla rivista che leggi sul tuo smartphone; ma siamo sicuri che avere un'interfaccia grafica sia la scelta più veloce? Vieni a conoscere WP CLI, uno strumento davvero interessante!

Contenuti Extra

WP CLI è un’interfaccia a riga di comando per WordPress che permette di installare, impostare, controllare e mantenere il proprio WordPress utilizzando soltanto il terminale. Mantenuto da uno degli sviluppatori più attivi nel panorama WordPress, Scribu, questa applicazione viene aggiornata molto spesso e presenta molte caratteristiche davvero interessanti.

Anche se utilizzare la riga di comando può sembrare molto da geek, cosa della quale io stesso mi trovo di tanto in tanto a combattere, con questo articolo spero di farti cambiare idea e mostrarti quanto utile può essere il terminale. Molto probabilmente, anche dato dal fatto che lavori con WordPress,  avrai provato diverse volte strumenti disponibili da riga di comando come GIT o SVN che ti permettono di gestire le diverse versioni del tuo codice. Se così non fosse, nessun problema, sono qua apposta ad aiutarti a muovere i primi passi.

Installare questo strumento richiede la possibilità di utilizzare un terminale, se usi Mac o Linux avrai a tua disposizione un terminale e molto probabilmente lo avrai già utilizzato, se vuoi andare a lavorare direttamente sul tuo server online, tutto quello che devi fare è aprire una connessione SSH con questo e lanciare i comandi che troverai in questa lezione.

Se non conosci le basi delle connessioni SSH, ti conviene andare a leggere qualcosa a riguardo, una semplice lettura dovrebbe essere più che sufficiente perché in fin dei conti, se ci sono riuscito io, sono sicuro che anche tu sarai in grado di connetterti al tuo server online tramite questo protocollo.

Passiamo ad Installare WP CLI

Una volta aperto il tuo terminale, installare questo strumento è veramente semplice, tutto quello che devi fare è digitare la seguente riga di codice:

Se non hai ricevuto alcun messaggio di errore, congratulazioni hai appena installato WP CLI!

Piccola Nota se usi MAMP o altri Servizi Simili

Se non è la prima volta che leggi uno dei miei articoli, dovresti ormai sapere che nel mio ambiente di sviluppo locale utilizzo moltissimo MAMP. La cosa mi ha provocato diverse volte qualche rogna ma trovo che questa applicazione sia veramente comoda da utilizzare e può essere perdonata se, per applicare qualche impostazione avanzata, devo fare qualche modifica.

Abbiamo già parlato di come questo programma ci nasconde determinati messaggi di errore e ti ho detto come puoi rimediare a questa cosa e, anche questa volta, mi trovo a darti qualche suggerimento se vuoi utilizzare WP CLI con questo. Il problema principale risiede nel fatto che il nostro MAMP non installa il linguaggio PHP nella posizione di default, anzi, tutti i programmi necessari alla gestione di un server web MAMP le mantiene all’interno della sua cartella.

Per fare in modo che WP CLI venga a conoscenza di queste modifiche è necessario andare ad aggiungere la posizione dell’eseguibile del linguaggio PHP direttamente all’interno del profilo del nostro terminale, tendenzialmente il file si trova all’interno della tua cartella utente (la tua home per capirci) e prende il nome di .bash_profile. Aperto questo file con qualsiasi editor di testo ecco che cosa devi inserire al suo interno:

Mi raccomando su una cosa in particolare, sostituisci i tre punti con il percorso corretto all’eseguibile della versione php che stai utilizzando altrimenti WP CLI non sarà in grado di funzionare correttamente. Fatto questo, quello che resta da fare è forzare il terminare a caricare nuovamente questo file dando il seguente comando:

Una cosa che ho notato nei miei esperimenti è che talvolta WP CLI non è in grado di comunicare direttamente con il server MySQL che MAMP porta con se, per risolvere questo problema ti consiglio di aprire nuovamente il file .bash_profile ed aggiungere quanto segue:

In questo modo stai indicando a WP CLI tutti gli eseguibili che sono presenti all’interno di MAMP e al 99% dei casi hai risolto qualsiasi problema di incompatibilità.

Primi Passi con WP CLI

A questo punto presumo che tu abbia tra le mani un terminale dal quale puoi lanciare i seguenti comandi. La prima cosa che devi fare è recarti all’interno della cartella root, quella dove inserisci i tuoi file .php (la cartella pubblica del tuo server web per capirci), creare una nuova cartella (ti servirà per installare un nuovo WordPress), spostati al suo interno ed inizia con l’eseguire il seguente comando.

Se tutto è andato a buon fine questo vuol dire che hai installato correttamente WP CLI e che avrai ricevuto un messaggio simile a questo:

Come puoi vedere, la risposta che ci ha fornito WP CLI è semplicemente una lista di file utilizzati dal programma stesso; ti consiglio di controllare nuovamente che i percorsi al binario PHP e al suo file di configurazione siano corretti perché il divertimento sta per iniziare!

Ma io non Posso Ricordarmi Tutto

Questa è sicuramente una delle scuse più comuni quando si parla di modificare le nostre abitudini passando da un mondo prettamente grafico ad uno meno vivace. Lo dico perché io stesso credevo che avere un’icona da raggiungere fosse più pratico che doversi ricordare decine di comandi a memoria, per fortuna nostra, lavorare con WP CLI non significa dover avere sempre a mente i nomi dei comandi che ci servono ma piuttosto sapere dove cercarli.

Ed il compito è veramente semplice dato che per ottenere la lista di questi basta digitare nel terminale il comando principale: wp. Una volta inserite queste due lettere e premuto il pulsante Invio ti verranno presentate una serie di comandi che potrai utilizzare assieme a questo. I più interessanti, nonché quelli che andremo a vedere in questo articolo sono:

  • core con questo comando è possibile scaricare, installare, aggiornare qualsiasi versione di WordPress che vuoi utilizzare;
  • plugin una serie di utili strumenti che ti permetteranno di installare, aggiornare, attivare, disattivare e disinstallare qualsiasi plugin WordPress;
  • theme come sopra ma relativo ai temi;
  • db , export e import questi sono singoli comandi ma ho preferito raggrupparli in un unico gruppo dato che ti permetteranno di fare delle operazioni di base con il tuo database.

Quindi, anche se abbiamo lasciato da parte molti altri comandi interessanti, puoi capire da solo che ti sarà possibile gestire il tuo WordPress senza neanche dover entrare all’interno del pannello di amministrazione, in questo modo potremmo salvare minuti preziosi che potrai dedicare ad altro.

Se hai qualche dubbio sull’effettivo risparmio di tempo perché stai gestendo un paio di siti, ti invito ad osservare questo aspetto da un punto di vista più ampio. Diciamo che stai seguendo i siti di 10 clienti, tutti questi sono (fortunatamente) installati all’interno dello stesso server web. Pensa soltanto per un attimo quanto tempo ti prenderebbe doverti loggare all’interno di ogni singolo WordPress per avviare le fasi di aggiornamento… Sei ancora sicuro che sarai più veloce che utilizzare la spartana linea di comando?

Installiamo WordPress

Torniamo per un attimo alla cartella che hai appena creato all’interno del tuo server web, nella mia configurazione personale ho creato la cartella test_wpcli e ci sono entrato con il comando cd test_wpcli. Una volta all’interno di questa cartella non ti resta altro che lanciare il seguente comando e lasciare che sia WP CLI a preoccuparsi di scaricare e scompattare l’ultima versione WordPress:

Tre semplici parole digitate all’interno di un terminale che ti permetteranno di:

  • evitare il collegamento al sito wordpress.org che ci permetterà di scaricare l’ultima versione WordPress in formato .zip all’interno di una cartella di nostra scelta;
  • estrarre il contenuto del file e copiarlo all’interno della cartella presente nel nostro ambiente di sviluppo;
  • cancellare l’archivio .zip e dirigersi con il proprio browser alla schermata di installazione WordPress.

Con un semplice comando trovi già tutto pronto all’interno della cartella nella quale hai eseguito l’accesso, vediamo adesso come procedere per l’installazione…

Prima di Installare bisogna Configurare

Come ci abitua anche l’installazione guidata di WordPress, prima di poter installare questa piattaforma dobbiamo fornire le informazioni necessarie alla corretta configurazione che, in poche parole, si traduce nell’indicare a WordPress quale database può utilizzare e le sue credenziali di accesso.

In questo articolo do per scontato che tu sappia come creare un database ma se dovessi incontrare qualche problema, non esitare a contattarmi!

Per configurare la tua nuova installazione WordPress puoi lasciare che sia WP CLI a generare per te il file wp-config.php con il seguente comando:

Come puoi notare, ancora una volta, il comando wp core dimostra la sua utilità ma, se hai provato ad eseguire questo comando, molto probabilmente hai ricevuto un errore. Questo errore non è lanciato da una tua mancanza ma piuttosto perché non ti ho ancora detto che questo comando accetta diversi parametri, i più utili saranno:

  • --dbname che specifica il nome del database che si vuole utilizzare;
  • --dbuser il nome utente che avrà accesso al database;
  • --dbpass la sua password;
  • --dbhost la URL che permette di raggiungere il database (da specificare soltanto se diversa dalla URL del proprio sito);
  • --dbprefix il prefisso della tabella che desideri utilizzare (anche in questo caso da specificare se desideri rendere difficile agli hacker di capire quale tabelle usa il tuo WordPress).

Quindi, nella sua forma minima, il precedente comando assumerà il seguente aspetto:

Forse un po’ più complicato del primo comando che abbiamo visto, ma è proprio qua che viene il bello! Per ciascun comando che vedi sarà possibile andare a creare uno script che ti permetterà di rendere il tutto molto più semplice!

Anche qua la mia intenzione non è spiegarti nel dettaglio come creare uno script, dato che anche io non ho una grande esperienza nella loro creazione. Quello che desidero fare è mostrarti delle vie che ti permetteranno di velocizzare ulteriormente i tuoi tempo di sviluppo.

Per creare uno script di questo genere basta creare un qualsiasi file con estensione .sh e, giusto per farti un esempio, ecco cosa dovresti inserire al suo interno per creare qualcosa di più umano:

Ecco fatto, adesso quando eseguirai questo script il terminale ti chiederà i dati necessari per permettere a WordPress di essere installato senza neanche doverti ricordare come si dichiarano i singoli parametri.

È Giunto il Momento di Installare

Concludiamo quindi questo articolo con il comando che permetterà di installare un nuovo fiammante WordPress nel giro di pochi secondi, ti senti di provare a dire quale comando bisogna usare? No?!? Dai nessun problema, ecco qua sotto il comando necessario:

Ancora una volta vediamo che il comando wp core è veramente molto utile in questa fase dello sviluppo ma, ancora una volta, se hai provato ad eseguire questo comando molto probabilmente il terminale ti avrà restituito un errore e, ancora una volta, il motivo risiede nel fatto che non ti ho parlato dei parametri che questo comando richiede:

  • --url che gli permette di identificare la URL utilizzata per questa installazione di WordPress;
  • --title ovviamente il titolo del nostro nuovo CMS;
  • --admin_name il nome dell’account di amministrazione;
  • --admin_email la mail…
  • --admin_passworde la sua password.

Insomma, non ci chiede altro che le informazioni necessarie per terminare l’installazione e fornirci un account con il quale gestire il nuovo sistema.

Ovviamente, come dimostrato prima per la configurazione, potresti creare un nuovo script che ti permette di inserire queste informazioni senza la necessità di ricordarti uno per uno ogni singolo parametro oppure potresti creare un unico script che ti permetterà di eseguire un’installazione WordPress nel giro di pochissimi secondi!

Conclusioni

Sono a conoscenza del fatto che mancano ancora diversi comandi all’appello, ma ci stiamo già avvicinando alle 2000 parole e non vorrei portare trovo avanti questo articolo introduttivo… Nel frattempo mi piacerebbe conoscere la tua opinione, hai provato ad utilizzare questo nuovo strumento? Come ti ci trovi? Non credi che sia il caso di condividere questo articolo con qualche amico bisognoso di qualche dritta?!?

Scherzi a parte, io mi sono praticamente innamorato di questo strumento e non riesco più a pensare alla gestione di WordPress senza avere questo installato all’interno dei miei server e ti consiglio vivamente di prendere mano ed iniziare ad utilizzare questo strumento il più frequentemente possibile perché sicuramente è qualcosa che velocizza incredibilmente la gestione di questa piattaforma.

Se poi sei curioso e desideri scoprire altri trucchi e dritte per utilizzarlo, non esitare ad aggiungere un commento qua sotto che non vedo l’ora di condividere con te le mie ultime esperienze!

Lascia il tuo Pensiero

2 Responses to “Introduzione a WP CLI”

  1. Luigi

    umm altro articolo che sto rileggendo per focalizzare i punti centrali:) una domanda non è molto che uso” mamp pro” ma da quanto vedo ti consente di utilizzare diverse versioni di php, quindi mi chiedevo in che modo vada modificato il .bash_profile?
    Aggiungendo export WP_CLI_PHP=/Applications/MAMP/…/bin/php per ciascuna versione di php?

    Utilizzando mamp pro devo cercare la cartella bin in mamp pro?

    Rispondi
    • Andrea Barghigiani

      Ciao Luigi,

      praticamente devi sostituire i puntini tra MAMP/ e bin/ con la cartella che include la versione di PHP che stai utilizzando (la vedi nelle imopstazioni di MAMP).

      Per quanto riguarda la versione PRO purtroppo non l’ho mai provata ma a Settembre uscirà un articolo che spiegherà come utilizzare i Virtual Host anche cn la versione free 😉

      A presto, Andrea

      Rispondi