Scopri come è possibile eseguire attività comuni di WordPress più rapidamente o addirittura automatizzarle utilizzando la potenza di bash.
wp-cli è uno strumento per controllare WordPress attraverso una finestra della console.
Quando l'interfaccia di amministrazione di WordPress è così bella e facile da usare, la domanda naturale è: perché dovresti usare un'interfaccia della riga di comando?
Ci sono due ragioni principali:
In questo tutorial ti darò un assaggio di cosa è utile per wp-cli.
Prima di usarlo, avrai bisogno di alcune cose:
Shell simile a UNIX - Se sei su un Mac o Linux, puoi eseguire wp-cli sul tuo computer locale. Se sei su Windows, puoi accedere al tuo server Linux tramite Putty e installare wp-cli lì.
PHP 5.3+ e l'utilità php-cli - Puoi vedere se hai questi eseguendo il seguente comando:
php -v
Idiota - Questo è ciò che useremo per installare e aggiornare wp-cli.
Il progetto wp-cli è ancora nella sua infanzia, quindi il modo migliore per rimanere aggiornato sulle ultime versioni è clonarlo da github:
git clone --recurse-submodules git: //github.com/andreascreten/wp-cli.git ~ / git / wp-cli cd ~ / git / wp-cli sudo utils / build-dev
~ / Git / wp-cli
è la directory in cui verrà installato wp-cli. Sentiti libero di cambiarlo in qualsiasi cosa tu voglia.
Questo è tutto. Ora il wp
il comando dovrebbe essere disponibile:
cd / var / www / public_html / wordpress wp
Se si desidera utilizzare wp-cli su un'installazione multisito, è necessario decidere su quale blog si desidera operare:
wp --blog = myblog.mynetwork.com
Per evitare di dover passare il --blog
parametro per ogni comando, è possibile memorizzarlo in un file appositamente denominato:
echo 'myblog.mynetwork.com'> wp-cli-blog
wp-cli leggerà quel file se non c'è --blog
parametro.
Per prima cosa, vediamo di quale versione di WordPress abbiamo a che fare:
versione core wp --extra
Per eseguire un aggiornamento, è sufficiente scrivere:
aggiornamento del core wp
Vediamo quali plugin abbiamo installato:
stato del plugin wp
Huh, sembra che ci sia un aggiornamento disponibile per Akismet. Installiamolo:
aggiornamento del plugin wp akismet
Ora installiamo e attiviamo un plugin da wordpress.org:
plugin wp installa google-sitemap-generator --activate
Inoltre, puoi installare la versione di sviluppo di un plug-in:
plugin wp installa google-sitemap-generator --activate --dev
Oh, e guarda, ora c'è un nuovo comando disponibile:
wp google-sitemap
Possiamo passare rapidamente un plug-in da attivo a inattivo e viceversa:
plugin wp attiva google-sitemap-generator
Questo è un buon modo per eseguire il debug degli hook di attivazione.
Allo stesso modo, puoi eseguire la procedura di disinstallazione di un plugin senza eliminare i file del plugin:
plugin wp disinstallare google-sitemap-generator
E, naturalmente, puoi anche eliminare il plugin:
plugin wp cancella google-sitemap-generator
Abbiamo alcuni comandi per lavorare anche con i temi:
stato del tema wp
A differenza dei plugin, puoi avere un solo tema alla volta, quindi l'attivazione di un tema "disattiva" automaticamente il precedente:
il tema wp si attiva venti
Ed ecco un piccolo trucco per andare nella directory di un tema particolare:
cd $ (wp theme path twentyeleven)
Se stai scrivendo un tema e vuoi modellare l'impaginazione, avrai bisogno di molti post. Ecco il modo più veloce per ottenerli:
wp genera post --count = 1000
Se vuoi stilare un elenco di utenti, puoi anche generare alcuni di questi:
wp genera utenti --role = autore
Puoi anche creare singoli utenti:
l'utente wp crea stan [email protected]
Potresti voler esportare periodicamente il tuo contenuto in un file WXR.
esportazione wp --path =. / --user = admin
È possibile passare ulteriori parametri per limitare il contenuto esportato, ad esempio --categoria
, --data d'inizio
eccetera.
Ci sono comandi diretti per CRUD operazioni su opzioni:
Opzione wp get permalink_structure wp option aggiungi foo bar wp option elimina foo
Non vuoi farlo regolarmente, poiché la maggior parte delle opzioni è vincolata a determinati valori. Ma può tornare utile negli script.
Se vuoi fare un backup del database, scrivi semplicemente:
wp db dump
O forse hai bisogno di fare una rapida domanda per trovare quando è stato pubblicato l'ultimo post:
wp db query "SELEZIONA MAX (post_date) da wp_posts WHERE post_type =" post "AND post_status =" pubblica ""
Aprire una sessione MySQL interattiva per fare alcuni test diagnostici è altrettanto facile:
wp db cli
A volte, l'unico modo per dire a wp-cli quello che vuoi è descriverlo nel codice PHP:
wp eval-file do-my-laundry.php
Con il comando precedente, wp-cli caricherà prima WordPress e quindi caricherà ed eseguirà il tuo file PHP.
Questo è utile per distribuire script o per altre azioni complesse che non possono essere ottenute utilizzando i comandi incorporati.
Puoi anche passare il codice PHP in linea:
wp eval 'echo WP_CONTENT_DIR;'
Che ci crediate o no, wp-cli è scritto principalmente in PHP. Ogni comando è una classe, con ogni metodo che rappresenta un sottocomando.
La cosa bella è che puoi creare la tua classe, inserirla in un plugin e wp-cli lo riconoscerà automaticamente come uno di loro. Un tutorial dettagliato per la creazione di comandi è disponibile nel wiki del progetto.
Spero di averti convinto almeno a provare wp-cli. Se hai trovato un bug o se hai una richiesta di funzionalità, considera l'apertura di un problema.
Hai un caso d'uso interessante per wp-cli? Si prega di condividerlo nei commenti qui sotto.