La guida completa all'installazione di WP-CLI

Pubblicato: 2022-03-16
Installa WP-CLI

L'interfaccia della riga di comando di WordPress (WP-CLI) è un potente strumento incentrato sugli sviluppatori di WordPress. Qui a Delicious Brains lo usiamo per aiutarci a scrivere test, gestire le modifiche ai database del nostro sito e abbiamo persino il supporto WP-CLI in WP Migrate DB Pro. Ultimo ma non meno importante, SpinupWP, il nostro pannello di controllo del server basato su cloud per WordPress, fa un uso massiccio di WP-CLI per gestire i siti WordPress, quindi è uno strumento incredibilmente importante per noi.

Ci piace così tanto che pensiamo sia importante che ogni sviluppatore di WordPress sappia come installarlo e usarlo. Questo post tratterà l'installazione di WP-CLI e la configurazione per funzionare in modo efficiente con questo straordinario strumento.

Sommario

  1. Che cos'è WP-CLI?
  2. Come installare WP-CLI su macOS e Linux
    1. Il metodo ufficiale
    2. Installazione di WP-CLI utilizzando un Package Manager
    3. Installazione di WP-CLI tramite APT
    4. Installazione di WP-CLI tramite Homebrew
    5. Installazione di WP-CLI tramite Composer
    6. Installazione di WP-CLI tramite Docker
    7. Verifica che WP-CLI funzioni
  3. Come installare WP-CLI su Windows
    1. Verifica che WP-CLI funzioni su Windows
  4. Dopo aver installato WP-CLI
    1. Configurazione del completamento della scheda
    2. Creazione di un file di configurazione WP-CLI
    3. Aggiornamento WP-CLI
  5. Avvolgendo

Che cos'è WP-CLI?

WP-CLI è un'interfaccia a riga di comando per WordPress. Ti consente di eseguire molte delle stesse attività del pannello di amministrazione sul tuo sito WordPress, ma da un terminale a riga di comando sul tuo computer o un server web. Questo lo rende molto utile sia durante lo sviluppo che una volta distribuito il sito. Puoi utilizzare WP-CLI per installare WordPress, configurare installazioni multisito, aggiornare plugin e temi, aggiornare WordPress stesso e molto altro.

Una volta che ti senti a tuo agio con WP-CLI, scoprirai che questo è spesso più veloce che fare la stessa cosa tramite il browser web (e ti fa sembrare davvero fantastico mentre lo fai).

Gli strumenti da riga di comando come WP-CLI sono ottimi anche per attività ripetitive, come aggiungere utenti in blocco o controllare regolarmente gli aggiornamenti. Questo perché WP-CLI è facile da combinare con altri strumenti e utilità da riga di comando come script Bash e lavori cron.

Le persone usano WP-CLI per un'ampia varietà di attività relative a WordPress. Per esempio…

Installazione e attivazione di un plug-in:

 $ wp plugin --activate advanced-custom-fields

Aggiunta di un utente:

 $ wp user create erik [email protected] --role=subscriber

Aggiornamento del core di WordPress e del database:

 $ wp core update && wp core update-db

Scattare uno snapshot del database:

 $ wp db export /mnt/backups/$(date +%Y%m%d).sql

L'aggiunta di un singolo utente, l'esecuzione di backup una tantum o l'esecuzione di controlli di aggiornamento utilizzando la riga di comando potrebbero non essere un grande vantaggio per l'utilizzo delle pagine di amministrazione. Tuttavia, se hai 500 utenti da aggiungere o desideri eseguire aggiornamenti e backup ogni mattina alle 3 del mattino, avere uno strumento da riga di comando diventa davvero utile.

Approfondiremo come ottenere il massimo da WP-CLI in un tutorial futuro, inclusi suggerimenti, suggerimenti e trucchi che il team di Delicious Brains ha raccolto nel corso degli anni. Ma prima di tutto, installiamo correttamente WP-CLI.

Come installare WP-CLI

Queste istruzioni sono per utenti Mac e Linux. Fare clic qui per passare alle istruzioni per l'installazione su Windows.

Il metodo ufficiale

Il modo consigliato per installare WP-CLI è documentato sul sito WP-CLI. L'installazione di WP-CLI su un computer Mac o Linux richiede PHP versione 5.6 o successiva ed è necessario che sia installato lo strumento da riga di comando cURL. Apri il tuo terminale ed esegui i seguenti comandi.

Il primo passo è scaricare la build Phar:

 $ curl -O https://raw.githubusercontent.com/wp-cli/builds/gh-pages/phar/wp-cli.phar

Successivamente, è necessario verificare il file scaricato:

 $ php wp-cli.phar --info

Infine, rendilo eseguibile e spostalo nel tuo PERCORSO:

 $ chmod +x wp-cli.phar $ sudo mv wp-cli.phar /usr/local/bin/wp

Installazione di WP-CLI utilizzando un Package Manager

Gli sviluppatori WP-CLI non sono attivamente coinvolti nella manutenzione dei pacchetti per la moltitudine di gestori di pacchetti. Le opzioni per l'installazione di WP-CLI utilizzando un gestore di pacchetti variano a seconda del gestore di pacchetti che utilizzi e se qualche volontario è intervenuto e ha creato un pacchetto per esso.

Installazione di WP-CLI tramite APT

Tiago Hillebrandt mantiene un PPA per l'installazione di WP-CLI su Debian/Ubuntu e tutte le sue variazioni. Puoi usare il suo PPA in questo modo:

 $ sudo add-apt-repository ppa:tiagohillebrandt/wp-cli $ sudo apt-get update $ sudo apt-get install wp-cli

Installazione di WP-CLI tramite Homebrew

Homebrew ha una formula per WP-CLI, quindi si tratta di eseguire il seguente comando:

 $ brew install wp-cli

Installazione di WP-CLI tramite Composer

Puoi anche usare Composer per installare WP-CLI. Sebbene l'uso più comune di Composer sia mantenere le dipendenze all'interno del tuo progetto PHP, può anche essere utilizzato per installare strumenti sul tuo computer. È possibile installare WP-CLI solo per il tuo progetto attuale se hai assolutamente bisogno di una specifica versione di WP-CLI. È abbastanza raro che un progetto abbia bisogno di qualcosa di diverso dall'ultima versione, quindi il mio consiglio è di installarlo a livello globale. È bello avere WP-CLI facilmente accessibile ovunque ed è una dipendenza di sviluppo in meno nei miei progetti. Ecco come installarlo a livello globale:

 $ composer global require wp-cli/wp-cli

Questo metodo di installazione richiede di aggiungere ~/.composer/vendor/bin alla variabile PATH. Funziona in modo diverso a seconda che utilizzi MacOS, Linux o Windows. Ecco alcuni link utili per l'utilizzo di Bash o Zsh.

Dopo aver installato WP-CLI a livello globale in questo modo, puoi accedervi da qualsiasi cartella sul tuo computer.

Installazione di WP-CLI tramite Docker

La community Docker gestisce le immagini WordPress e WP-CLI. Puoi utilizzare l'immagine WP-CLI nei tuoi progetti Docker specificando la variante CLI come immagine di WordPress nel file yml creato da docker compose .

 image: wordpress:cli

Verifica che WP-CLI funzioni

Indipendentemente dal metodo di installazione utilizzato, è una buona idea verificare che l'installazione sia riuscita e che WP-CLI sia accessibile indipendentemente dalla directory in cui ti trovi. Per verificare che le cose funzionino come dovrebbero, puoi passare il --info parametro:

 $ wp --info

Se è installato correttamente, dovresti vedere qualcosa del genere:

Sistema operativo: Darwin 20.6.0 Darwin Kernel Versione 20.6.0: mercoledì 10 novembre 22:23:07 PST 2021; radice: xnu-7195.141.14~1/RELEASE_X86_64 x86_64
Shell: /bin/zsh
Binario PHP: /usr/local/Cellar/[email protected]/7.4.27/bin/php
Versione PHP: 7.4.27
php.ini utilizzato: /usr/local/etc/php/7.4/php.ini
Binario MySQL: /usr/local/bin/mysql
Versione MySQL: mysql Ver 8.0.28 per macos11.6 su x86_64 (Homebrew)
Modalità SQL:
Directory radice WP-CLI: phar://wp-cli.phar/vendor/wp-cli/wp-cli
Dir del fornitore WP-CLI: phar://wp-cli.phar/vendor
Percorso WP_CLI phar: /usr/local/bin
Pacchetti WP-CLI dir:
Configurazione globale WP-CLI:
Configurazione progetto WP-CLI:
Versione WP-CLI: 2.6.0

Come installare WP-CLI su Windows

L'installazione di WP-CLI su Windows nativo è leggermente diversa dall'installazione su un computer Mac o Linux. Prima di iniziare, utilizzando il sottosistema Windows per Linux che Microsoft ha introdotto alcuni anni fa dovresti essere in grado di installare usando le istruzioni per MacOS e Linux sopra. Se vuoi che funzioni con Windows nativo, i seguenti passaggi sono per te.

Tieni presente che WP-CLI è prima di tutto realizzato per sistemi basati su *nix. Alcune funzionalità, come l'accesso a siti WordPress remoti tramite SSH, potrebbero richiedere di saltare attraverso un bel po' di cerchi. Altre funzionalità potrebbero non funzionare affatto. Ma è possibile eseguire un'installazione di base di WP-CLI su una macchina Windows.

Tieni presente che il tuo account utente Windows deve disporre dei diritti di amministratore affinché questi passaggi funzionino. Se non disponi dei diritti di amministratore, devi chiedere a qualcuno che li ha di darti i diritti di amministratore o di aiutarti con questi passaggi.

Requisiti di Windows

Per iniziare con l'installazione della riga di comando di WordPress su Windows, l'unico vero requisito è che tu abbia la riga di comando PHP per Windows installata e aggiunta al tuo PERCORSO in modo da poter eseguire PHP dalla riga di comando in qualsiasi directory di lavoro. Il modo più semplice per installare WP-CLI è utilizzare cURL. La maggior parte delle installazioni di Windows ha già installato cURL, poiché è stato incluso in Windows 10 dal 2018.

Se non lo hai già sul tuo computer, ti consiglio vivamente di installarlo utilizzando uno di questi metodi suggeriti o scaricandolo dalla home page di cURL prima di continuare.

Scarica e installa

Per prima cosa devi scaricare l'ultima build di wp-cli.phar da GitHub in una cartella locale. Se hai installato cURL puoi farlo con tre comandi:

 C:\> mkdir C:\wp-cli C:\> cd C:\wp-cli C:\> curl -O https://raw.github.com/wp-cli/builds/gh-pages/phar/wp-cli.phar

Se non hai cURL e non puoi installarlo, puoi anche creare manualmente la cartella C:\wp-cli in Esplora file di Windows, scaricare il file utilizzando il collegamento sopra e quindi spostarlo in quella cartella.

Dopo aver scaricato il file, è una buona idea confermarne il funzionamento digitando:

 C:> php C:\wp-cli\wp-cli.phar --info

Dovresti vedere un paio di righe che riassumono il tuo ambiente WP-CLI locale.

Digitare il percorso completo del file phar ogni volta che si esegue un comando WP-CLI invecchierà molto velocemente. Quindi, per rendere la vita un po' più facile, faremo altri due passaggi. Per prima cosa aggiungiamo permanentemente la cartella C:\wp-cli alla variabile di ambiente PATH. Preferisco farlo usando il comando setx . Puoi scegliere se aggiungerlo solo al tuo ambiente o aggiungerlo per tutti gli utenti usando l' /m .

Per tutte le sessioni future con il tuo account utente:

 setx PATH "%PATH%;c:\wp-cli"

Solo per la sessione del terminale corrente:

 set PATH "%PATH%;c:\wp-cli"

O per tutte le sessioni future, per tutti gli utenti del sistema:

 setx PATH "%PATH%;c:\wp-cli" /m

Basta aggiungere il percorso al tuo ambiente va bene se questa è la tua macchina di sviluppo locale. Se si tratta di un server in cui è possibile pianificare lavori notturni utilizzando WP-CLI, è meglio aggiungerlo all'ambiente per tutti gli utenti. L'uso di setx con l'opzione /m richiede l'apertura di un terminale CMD con diritti amministrativi completi. Il modo più semplice per farlo è cercare cmd.exe nel menu Start, fare clic con il pulsante destro del mouse e selezionare Esegui come amministratore per aprirlo:

Avvia cmd.exe come amministratore

Infine, creiamo un file batch di Windows nella cartella WP-CLI denominata wp.bat con il seguente contenuto:

 @ECHO OFF php "c:\wp-cli\wp-cli.phar" %*

Questo file .bat ti consentirà di chiamare run WP-CLI usando il wp più breve invece di digitare sempre il nome completo del file phar. Ti fa risparmiare un sacco di digitazione ed è anche il modo in cui WP-CLI viene chiamato su Mac e Linux.

Verifica che WP-CLI funzioni su Windows

Con tutto quanto sopra in atto, ora dovremmo essere in grado di eseguire WP-CLI da qualsiasi cartella:

 C:\> wp --info

Se è installato correttamente, dovresti vedere qualcosa del genere:

Sistema operativo: Windows NT 10.0 build 19043 (Windows 10) AMD64
Shell: C:\WINDOWS\system32\cmd.exe
Binario PHP: C:\php\php.exe
Versione PHP: 7.4.27
php.ini utilizzato:   
Binario MySQL: 
Versione MySQL:
Modalità SQL:
Directory radice WP-CLI: phar://wp-cli.phar/vendor/wp-cli/wp-cli
Dir del fornitore WP-CLI: phar://wp-cli.phar/vendor
Percorso WP_CLI phar: C:\wp-cli
Pacchetti WP-CLI dir:
Configurazione globale WP-CLI:
Configurazione progetto WP-CLI:
Versione WP-CLI: 2.6.0

Dopo aver installato WP-CLI

Dopo aver installato WP-CLI e aver verificato che funziona, è il momento di eseguire alcune impostazioni iniziali. Uno dei concetti fondamentali di WP-CLI sono i commands che possono avere subcommands . Ciascuno di questi comandi e sottocomandi può avere una serie di opzioni opzionali. A volte puoi finire per digitare stringhe di comando piuttosto lunghe. Proprio l'altro giorno avevo bisogno di inserire un elemento array all'interno di un'opzione di WordPress e il comando è finito in questo modo:

 $ wp --path=www/testing option patch insert tantan_wordpress_s3 post_meta_version 7

Una volta che ti senti a tuo agio con WP-CLI, imparerai senza dubbio molti di questi comandi a memoria. Ma se questo sembra più digitare di quanto ti piace fare su base regolare, lascia che ti mostri alcune cose che puoi fare per renderlo meno scoraggiante e molto più probabile che sia corretto al primo tentativo.

Configurazione del completamento della scheda

La prima cosa che faremo è abilitare il completamento delle schede, che è il meccanismo nella shell che suggerisce automaticamente cosa dovresti digitare dopo quando premi il tasto TAB . Nel mio ambiente, scrivo semplicemente l'inizio di quel comando sopra per vedere quali sottocomandi ci sono:

 $ wp option [TAB] add delete get list patch pluck update

Configurare il completamento delle schede è troppo facile per non farlo, ma aiuta a sapere quale shell della riga di comando stai usando. Se non sei sicuro, lascia che ti mostri rapidamente come farlo controllando la variabile d'ambiente $SHELL:

 # On older MacOS and on most Linux boxes, we should see /bin/bash $ echo $SHELL /bin/bash # On newer MacOS boxes, we should see /bin/zsh $ echo $SHELL /bin/zsh # Check for Oh My Zsh $ omz Usage: omz <command> [options] Available commands: help Print this help message changelog Print the changelog plugin <command> Manage plugins pr <command> Manage Oh My Zsh Pull Requests reload Reload the current zsh session theme <command> Manage themes update Update Oh My Zsh version Show the version

Se stai usando Oh My Zsh, questa è la cosa più semplice in assoluto. Basta digitare il seguente comando:

 $ omz plugin enable wp-cli omz::plugin::enable: plugins enabled: wp-cli.

Se stai usando direttamente Bash o Zsh, ci sono solo alcuni passaggi in più per scaricare lo script e aggiungerlo al tuo ambiente. Innanzitutto, passa alla tua cartella home e scarica lo script per la versione 2.6.0 di WP-CLI:

 $ cd ~/ $ curl -O https://raw.githubusercontent.com/wp-cli/wp-cli/v2.6.0/utils/wp-completion.bash

Quindi, aggiungilo al tuo profilo e ricaricalo. Gli utenti di Bash possono utilizzare questi comandi:

 $ echo "source ~/wp-completion.bash" >> ~/.bash_profile $ source ~/.bash_profile

Gli utenti Zsh, tuttavia, dovrebbero usare questi:

 $ echo "source ~/wp-completion.bash" >> ~/.zshenv $ source ~/.zshenv

Su un sistema Linux, invece di reperire wp-completion.bash dal tuo ~/.bash_profile , devi farlo dal tuo ~/.bashrc . Assicurati che il file wp-completion.bash sia nella tua home directory, quindi esegui i seguenti comandi dalla home directory:

 cat wp-completion.bash >> .bashrc source .bashrc

Sebbene il completamento delle schede in una certa misura esista anche per Windows, per quanto ne so non è possibile integrarlo con strumenti di terze parti come WP-CLI come su Mac o Linux. Se conosci un modo per aggiungere il completamento della scheda WP-CLI su Windows, contattaci nei commenti qui sotto.

Creazione di un file di configurazione WP-CLI

La prossima cosa che faccio sempre non appena ho un'installazione WP-CLI funzionante è aggiungere un file di configurazione alla mia cartella $HOME . I file di configurazione sono un argomento abbastanza avanzato con molte funzionalità interessanti che potrebbero giustificare un articolo completamente separato. Ottenere un file di configurazione di base è un ottimo modo per ridurre la quantità di digitazione ripetitiva.

Senza un file di configurazione in atto, WP-CLI presumerà che la tua directory di lavoro sia la stessa del file wp-config.php del sito WordPress effettivo. Molte volte non sarai in quella directory. Ad esempio, ogni volta che apri il tuo terminale, ti troverai in genere nella tua cartella $HOME . Fortunatamente puoi fornire il parametro --path a WP-CLI per farlo apparire nella cartella corretta:

 $ wp --path=/Users/eriktorsner/src/path/to/wordpress plugin list

Come puoi immaginare, diventa rapidamente piuttosto noioso continuare a digitare quella variabile di percorso iniziale ogni singola volta. Per ridurre la quantità di digitazione è possibile aggiungere un file di configurazione che WP-CLI utilizzerà per ottenere il path e altri parametri importanti.

Per creare questo file, apri il tuo editor di testo preferito e crea un file chiamato wp-cli.yml nella tua home directory. Aggiungi la seguente riga:

 path: /Users/eriktorsner/src/path/to/wordpress

Devi adattare quel percorso in modo che corrisponda a dove hai o stai pianificando di mettere la tua installazione locale di WordPress. Con questo file in atto, WP-CLI saprà automaticamente dove cercare l'installazione di WordPress in modo da non doverlo digitare ogni volta.

Ogni volta che esegui il comando WP-CLI, cercherà un file di configurazione da utilizzare. Esistono diversi posti potenziali in cui inserire un file di configurazione e c'è una priorità specifica che determina quale file di configurazione viene scelto, dalla priorità più alta a quella più bassa:

  1. Un file denominato wp-cli.local.yml nella directory di lavoro corrente o superiore
  2. Un file denominato wp-cli.yml nella directory di lavoro corrente o superiore
  3. Un file chiamato wp-cli.yml nella tua cartella $HOME

Nota che "o verso l'alto" significa che, supponendo che tu conservi un file di configurazione nella radice dell'installazione di WordPress, WP-CLI sarà comunque in grado di trovare se ti sei spostato in una sottodirectory come wp-content/uploads/year/month . Vale anche la pena sapere che se vuoi mettere il tuo file di configurazione in un posto diverso dalla tua cartella home, puoi sempre specificare una posizione usando la variabile d'ambiente WP_CLI_CONFIG_PATH .

Qualsiasi parametro fornito tramite il comando digitato sovrascriverà i valori prelevati da un file di configurazione, il che semplifica l'override dei valori da un file di configurazione quando necessario.

Questa sezione ha appena scalfito la superficie di quanto possa essere incredibilmente utile il file di configurazione WP-CLI. In un post futuro, ho intenzione di scavare molto più a fondo e mostrarti come li utilizzo per gestire i miei ambienti di sviluppo WordPress locali.

Aggiornamento WP-CLI

WP-CLI ha la capacità di autoaggiornarsi. Se hai installato WP-CLI utilizzando il metodo consigliato, puoi aggiornarlo utilizzando il comando update sub:

 $ sudo wp cli update

Nel tuo ambiente di sviluppo locale, potresti voler provare le ultime e migliori funzionalità di WP-CLI e utilizzare la build notturna (ma evitalo sui server di produzione):

 $ sudo wp cli update --nightly

Se hai installato WP-CLI utilizzando un gestore di pacchetti, dovresti sempre aggiornare utilizzando il meccanismo dei gestori di pacchetti. L'aggiornamento diretto funzionerà quasi sicuramente, ma non lo consiglio. Ruberesti al gestore di pacchetti la possibilità di sapere quale versione è attualmente installata. Non è mai una buona cosa. Dopo aver selezionato il metodo di installazione, ti suggerisco di seguirlo anche per gli aggiornamenti.

Avvolgendo

Se hai seguito questo post, ora dovresti avere un'installazione funzionante di WP-CLI impostata con il completamento della scheda e un file di configurazione di base in atto. Inizieremo a vedere come portare a termine il lavoro con questo strumento, analizzando la gestione dei plug-in in un post futuro.

Nel frattempo, potresti voler leggere il nostro articolo sui pacchetti WP-CLI di cui non possiamo fare a meno, o la nostra serie sull'automazione della configurazione del sito WordPress locale con gli script.

Se hai domande su come installare WP-CLI, non esitare a farmelo sapere nei commenti qui sotto.