WP-CLI v2 – Gestionarea WordPress din terminal

Pentru cea mai mare parte a vieții sale, WordPress a fost construit folosind o bază simplă de cod, cu o linie de PHP orientată spre obiect, fiind cel mai abstract sistem. În ultimii ani, însă, acest lucru se schimbă în bine. De la testarea unităților până la preprocesarea CSS și instrumentele liniei de comandă, apar tot mai multe active prietenoase pentru dezvoltatori. În acest articol, vom analiza unul dintre preferatele mele: WP-CLI.

Ce este WP-CLI?

WP-CLI este un instrument de linie de comandă pentru dezvoltatori, menit să gestioneze sarcinile comune (și nu atât de comune) ale unei instalări WordPress. Poate adăuga / elimina utilizatori, postări, categorii, introduce date de testare, căutare și înlocuire în baza de date, resetarea parolelor, poate ajuta la rezolvarea problemelor de performanță dar și multe altele!

WP-CLI a fost un proiect de tip open source timp de peste un deceniu, fiind menținut în principal de Daniel Bachhuber din 2003. Scopul principal al WP-CLI este de a ajuta la accelerarea fluxului de lucru al dezvoltatorilor WordPress.

De-a lungul anilor, proiectul a apărut în mult mai mult! Acum a devenit chiar o cerință pentru alte proiecte open source, cum ar fi Trellis și Bedrock. Începând cu ianuarie 2017, WP-CLI s-a mutat oficial pe WordPress.org și este în prezent menținut în co-întreținere de Alain Schlesser.

WP-CLI v2 a fost lansat pe 8 august 2018, așa că vom explora, de asemenea, unele dintre modificări și funcții noi. Accesul SSH este inclus în toate planurile companiilor serioase de găzduire (Nu se poate conecta prin SSH? Remediați eroarea SSH „Conectare refuzată”). 

În acest articol vom aborda următoarele subiecte

  • Obținerea WP-CLI
  • Bazele WP-CLI
  • Comenzi generale în WP-CLI
  • Exemple utile
  • Utilizarea de la distanță a WP-CLI
  • Utilizarea scripturilor Bash

 

Obținerea WP-CLI

Cerința PHP minimă pentru WP-CLI v2.0.0 a fost ridicată până la PHP 5.4. Deși acesta este un pas înainte, vă recomandăm să rulați cel puțin o versiune acceptată de PHP, adică 5.6 sau mai mare.

Pentru a începe, va trebui să instalați WP-CLI – un proces foarte simplu. Pașii pentru Linux și OSX sunt următorii, emiteți aceste trei comenzi în mod succesiv:

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

chmod +x wp-cli.phar

sudo mv wp-cli.phar /usr/local/bin/wp

Odată emise aceste trei comenzi, ar trebui să puteți emite comanda wp –info și să primiți un răspuns semnificativ.

Procesul este același dacă doriți să instalați WP-CLI pe serverul dumneavoastră. Nu uitați, unele companii de hosting oferă WP-CLI deja instalat. Nu sunteți sigur ce versiune rulați în prezent? Puteți folosi întotdeauna comanda wp cli version pentru a afla.

Bazele WP-CLI

A avea acces la WordPress prin linia de comandă este de la sine puternic, dar vă poate oferi și mai mult control și câștiguri în ceea ce privește viteza atunci când utilizați scripturi bash.

Scripturile Bash vă permit să rulați o secvență de comenzi cu o singură comandă. Puteți tasta bash install-and-setup.sh și puteți obține următorul rezultat:

  • Descărcați WordPress
  • Creați și populați wp-config.php
  • Creați baza de date
  • Instalați WordPress
  • Instalați și activați orice plugin aveți nevoie
  • Instalați și o temă
  • Descărcați și adăugați conținut de test

Aceștia ar fi pașii pe care ar trebui să îi faceți pentru a crea un nou mediu de testare pentru un proiect. În mod normal, acest lucru ar dura 5-10 minute cel puțin, mai ales dacă sunt câteva plugin-uri implicate. Emiterea unei singure comenzi este, evident, mult mai rapidă.

Comenzi generale în WP-CLI

Dacă sunteți obișnuiți să lucrați în terminal atunci nu există nimic special despre WP-CLI pentru dumneavoastră. Comenzile încep întotdeauna cu wp, urmate de o comandă și subcomandă, urmate de parametrii necesari și opționali, cum ar fi:

wp command subcommand requiredparam –optionalparam –optionalparam2=value

Să instalăm o temă pentru a vedea cum funcționează acest procedeu cu o comandă wp-cli:

wp theme install twentyseventeen –activate

Aceasta va instala și va activa tema Twenty Seventeen pe instalarea dumneavoastră WordPress.

Rețineți că WP-CLI va funcționa cu instalarea WordPress în care vă aflați în prezent în terminal. Dacă schimbați directoarele pentru a merge la o altă instalare WordPress, aceasta va funcționa cu acea.

Exemple utile

Aceasta a fost WP-CLI pe scurt! Deși puteți face câteva lucruri avansate, la care vom ajunge într-o clipă, deja știți suficient pentru a începe și a face tot ce aveți nevoie. Vă recomand să aruncați o privire la lista de comenzi apoi încercați unele dintre ele. Vom arunca o privire asupra unor lucruri utile aici, apoi vom trece la utilizarea WP-CLI peste SSH și la utilizarea scripturilor bash.

Instalarea WordPress

Folosesc foarte mult WP-CLI pentru a configura medii de testare, primul pas fiind instalarea unei vanilla. Iată o listă de comenzi pe care le execut:

wp core download

wp core config –dbname=mydbname –dbuser=mydbuser –dbpass=mydbpass –dbhost=localhost –dbprefix=whebfubwef_ –extra-php <<PHP

define( ‘WP_DEBUG’, true );

define( ‘WP_DEBUG_LOG’, true );

PHP

wp db create

wp core install –url=http://siteurl.com –title=SiteTitle –admin_user=username –admin_password=mypassword –admin_email=my@email.com

Rețineți cât de inedit este! Cea mai recentă versiune de WordPress este descărcată folosind prima comandă. A doua comandă stabilește fișierul de configurare cu acces la baza de date și ceva PHP suplimentar la final. Constantele suplimentare ne asigură că avem opțiunile noastre de depanare pentru testare.

A treia comandă creează baza de date (WP-CLI folosește informațiile de acces la baza de date din fișierul de configurare) și, în sfârșit, instalăm WordPress folosind o serie de parametri:

Reinstall WordPress Core

Puteți reinstala și nucleul WordPress folosind WP-CLI. Următoarea comandă ar descărca WordPress core fără teme și pluginuri implicite.

wp core download –skip-content –force

Schimbați adresa URL WordPress

Există multe motive pentru care este posibil să aveți nevoie sau să doriți să vă modificați adresa URL WordPress. Poate că schimbați domenii, treceți la un subdomeniu, actualizați de la www la non-www, mutați fișiere în jurul sau chiar migrați de la HTTP la HTTPS. Oricare ar fi cazul, puteți utiliza cu ușurință comanda wp option update pentru aceasta. Iată un exemplu de mai jos:

wp option update home ‘http://example.com’

wp option update siteurl ‘http://example.com’

Lista de plugin-uri curente cu detalii

Pentru a obține o listă de pluginuri actuale instalate pe un site, pur și simplu folosiți următoarea comandă. De asemenea comanda va returna starea (activă / dezactivată), dacă există o actualizare disponibilă și versiunea curentă.

wp plugin list

Instalarea mai multor plugin-uri

Pentru a instala mai multe pluginuri, puteți pur și simplu să puneți parametri grămadă. Iată un exemplu care descarcă și activează 3 plugin-uri:

wp plugin install advanced-custom-fields jetpack ninja-forms –activate

Rețineți că numele pluginului provine de la numele pluginurilor din depozitul WordPress. Cel mai simplu mod de a descoperi acest nume este de a vizita pagina lor și de a privi URL-ul sau de a utiliza comanda wp plugin search searchterm, aceasta vă va oferi o listă în terminal.

Chiar mai bine, puteți instala plugin-uri din fișierele remote, nu doar din depozitul WordPress, lucru  care este util dacă dezvoltați un plugin sau dacă utilizați un plugin premium. Următoarea comandă instalează două plugin-uri din depozit și unul de pe un server Amazon S3.

wp plugin install advanced-custom-fields jetpack https://d1qas1txbec8n.cloudfront.net/wp-content/uploads/2015/06/23073607/myplugin.zip –activate

Dezactivați multiple plugin-uri

Pentru a dezactiva un singur plugin utilizați următoarea comandă:

wp plugin deactivate wordpress-seo

Pentru a dezactiva toate plugin-urile utilizați următoarea comandă:

wp plugin deactivate –all

Comanda de mai sus poate fi utilă dacă rezolvați probleme de compatibilitate și trebuie pur și simplu să dezactivați toate pluginurile într-o singură clipă. Puteți apoi să vă întoarceți și să le activați unul câte unul.

Update Plugin-uri

De asemenea, puteți actualiza manual pluginurile WordPress:

wp plugin update wordpress-seo

Căutare și înlocuire în baza de date

Unul dintre motivele principale pentru care este dificil să migrați un site doar prin copierea și lipirea unei baze de date este aceela că baza de date conține tablouri serializate. Dacă trebuie să înlocuiți toate instanțele de pe http://testsite.com cu http://livewebsite.com, tablourile dumneavoastră serializate nu vor avea sens, deoarece numărul de șiruri nu se va potrivi.

Comanda search-replace neserializează matricile mai întâi, apoi efectuează căutarea și înlocuirea, apoi re-serializează matricile. Puteți face acest lucru cu o simplă comandă:

wp search-replace oldstring newstring

Parametrii suplimentari vă permit să faceți multe altele, inclusiv previzualizarea a ceea ce va fi înlocuit folosind –dry-run.

Import și export

Există două modalități de a exporta conținut cu WP-CLI. Puteți crea un fișier XML, la fel ca instrumentul de export WordPress, sau puteți exporta / importa baza de date brută.

Comanda wp db export reprezintă tot ce trebuie să faceți pentru a crea un fișier SQL și wp db import file.sql este tot ce vă trebuie pentru a-l importa. Funcționează ca prin farmec, trebuie doar să aveți grijă să nu suprascrieți nimic de care aveți nevoie, importul practic va arunca baza de date existentă și va folosi fișierul SQL furnizat în schimb.

Gestionați rolurile și capacitățile

WP-CLI poate gestiona roluri pentru dumneavoastră destul de ușor folosind comanda wp role. Acest lucru este destul de interesant dacă doriți să testați modul în care funcționează pluginul cu roluri personalizate, dar nu creați de fapt rolurile în cadrul pluginului.

wp role create organizer Organizer

wp cap list ‘editor’ | xargs wp cap add ‘organizer’

wp cap add ‘organizer’ ‘manage-events’

Comenzile de mai sus vor crea un nou rol (Organizator), vor adăuga toate funcțiile din rolul de editor și apoi vor adăuga o nouă capacitate: manage-events.

Generați date de testare

Îmi plac tot felul de funcții asemănătoare cu faker – cele care adaugă conținut fals în site-ul dumneavoastră pe care le puteți folosi pentru teste. WP-CLI are câteva dintre acestea integrate, iată câteva funcții care vor genera utilizatori, termeni și postări.

wp user generate –count=5 –role=editor

wp user generate –count=10 –role=author

wp term generate –count=12

wp post generate –count=50

Gestionați WP-Cron Events

Puteți gestiona evenimente WP-Cron sau un job WordPress Cron în WP-CLI. De exemplu, următoarea comandă vă va oferi lista de evenimente cron curente.

wp cron event list

Curățați tabelul wp_options

Tabelul wp_options poate fi un vinovat obișnuit pentru perioadele de interogare lente pe site-ul dumneavoastră web, datorită datelor automate încărcate care rămân în urmă din pluginuri și teme de la terți. 

Ștergeți Revizuiri WordPress

Pe site-urile mari, reviziile WordPress pot adăuga foarte repede mii de rânduri din baza de date care nu sunt necesare. Puteți șterge revizuirile postate cu WP-CLI. Iată un exemplu de comandă:

$ wp post delete $(wp post list –post_type=’revision’ –format=ids)

Controlați modul de mentenanță

Începând cu WP-CLI v2.2.0, puteți controla modul de mentenanță pe site-ul dumneavoastră WordPress. Spre exemplu:

wp maintenance-mode activate

wp maintenance-mode deactivate

wp maintenance-mode status

Utilizarea de la distanță a WP-CLI

Unul dintre cele mai bune lucruri pe care le puteți face cu WP-CLI este gestionarea instalațiilor dumneavoastră WordPress de la distanță. Acesta este într-adevăr visul unui administrator al site-ului web.

Pentru a rula fără probleme comenzile WP-CLI pe un server la distanță prin SSH, înainte aveați nevoie de comanda wp-cli-ssh addon. Dar de la v0.24.0, aceasta face parte acum din WP-CLI în sine! 

Important: 

Aveți nevoie de WP-CLI instalat atât pe computerul de la care executați comanda, cât și pe serverul dumneavoastră.

Configurați Serverele Remote

Puteți configura serverele la nivel global sau local. Pentru a le configura la nivel global, utilizați fișierul config.yml. De asemenea, puteți utiliza fișierele wp-cli.yml sau wp-cli.local.yml din directorul dumneavoastră de lucru curent.

ssh:

 

  staging:

    cmd: ssh %pseudotty% username@server.com %cmd%

    url: http://myseite.com

    path: /www/path/to/site/root

După ce toate acestea sunt făcute, puteți introduce următoarea comandă pentru a actualiza WordPress pe site-ul dumneavoastră de la distanță:

wp ssh core update –host=staging

Utilizarea Scripturilor Bash

Scripturile Bash vă economisesc și mai mult timp automatizând sarcinile. Vă amintiți cum a trebuit să tastăm o mulțime de comenzi pentru a instala WordPress? Puteți face asta cu un singur script bash. În interiorul unui director creați un fișier install.sh. Lipiți același cod pe care l-am folosit înainte în interiorul fișierului și salvați-l.

wp core download

wp core config –dbname=mydbname –dbuser=mydbuser –dbpass=mydbpass –dbhost=localhost –dbprefix=whebfubwef_ –extra-php <<PHP

define( ‘WP_DEBUG’, true );

define( ‘WP_DEBUG_LOG’, true );

PHP

wp db create

wp core install –url=http://siteurl.com –title=SiteTitle –admin_user=username –admin_password=mypassword –admin_email=my@email.com

Tot ce trebuie să faceți acum este să introduceți comanda bash install.sh și totul va fi făcut pentru dumneavoastră, fără intervenția utilizatorului. Dacă gestionați o mulțime de site-uri puteți configura toate mediile dumneavoastră și puteți crea un script bash ca acesta:

wp ssh core update –host=clientA

wp ssh core update –host=clientB

wp ssh core update –host=clientC

wp ssh core update –host=clientD

O Găzduire WordPress  furnizată de firma de hosting este esențială pentru un site WordPress, dar în același timp este și o dovadă de seriozitate și profesionalism a acesteia.

 

1 Comment
  1. […] reinstala și WordPress Core folosind WP-CLI. WP-CLI este un instrument de linie de comandă pentru gestionarea mai multor aspecte ale unei […]

Leave a reply

ReviewHosting
situs toto slot gacor situs toto togel https://faculdadediplomata.edu.br/-/ https://www.pilgrimagetour.in/-/ situs toto slot gacor slot gacor situs toto situs toto https://cpnsbatola.id/-/ bento4d cerutu4d rimbatoto https://smpitbinailmu.sch.id/ bakautoto bakau toto slot https://inspiracionspa.com.mx/-/ bento4d bento4d https://pafikabupatenrejanglebong.org/
toto slot toto slot situs toto situs toto https://www.kimiafarmabali.com/