Lucrul cu tabele de baze de date personalizate în WordPress

Lucrul cu tabele de baze de date personalizate în WordPress / Wordpress și dezvoltare web

Ti-am aratat multe moduri in care WordPress este deja CMS-ul cel mai flexibil 5 lucruri pe care nu ar fi putut sa le stiti ca ar putea face cu Wordpress 5 lucruri pe care nu ar fi fost cunoscute pe care le-ar putea face cu Wordpress Fiind cel mai versatil blogging sistem vreodata, surprinzător că dezvoltatorii s-au răsturnat și l-au scos pe Wordpress într-atât de mult prin utilizarea inteligentă a pluginurilor. Dacă credeai că Wordpress era doar pentru ... Citește mai mult. O scanare rapidă a paginii Best of WordPress Plugins va dezvălui, de asemenea, câteva din modalitățile unice și de nișă în care puteți face din blogul dvs. să funcționeze mai greu. V-am arătat cum să utilizați tipuri personalizate de posturi Cum să faceți propriile dvs. evenimente Evenimente Utilizarea personalizate Tipuri de posturi [Wordpress] Cum să faceți propriile dvs. evenimente Evenimente Utilizarea personalizate Tipuri de posturi [Wordpress] Unul dintre avantajele folosirii Wordpress este flexibilitatea sa. Versiunea 3 a introdus conceptul de tipuri personalizate de posturi pentru a extinde funcționalitatea încorporată. Să aruncăm o privire azi la ceea ce ați putea face ... Citește mai multe pentru a crea propria dvs. bază de date mini Faceți o revizuire a produselor Baza de date cu Wordpress: personalizate tipuri de posturi, câmpuri personalizate, imagini și widget-uri recomandate! Faceți o revizuire a produsului Baza de date cu Wordpress: Tipuri personalizate de posturi, câmpuri personalizate, imagini și widget-uri recomandate! Ultima dată când v-am arătat cum să creați o listă simplă a evenimentelor utilizând probabil cea mai puternică caracteristică a WordPress 3.0 - tipuri personalizate de posturi. După câteva cereri de a dezvolta acest lucru mai departe, astăzi vom fi ... Citește mai mult; dar am lăsat un singur lucru, cred.

Ce se întâmplă dacă aveți deja o bază de date de spus, informații despre client, dar doriți să fiți capabil să interogați aceste date și să le afișați într-un șablon WordPress? Astăzi vă voi arăta cum să faceți asta, în siguranță în motorul WordPress.

cerinţe

  • Site-ul propriu WordPress găzduit pe cont propriu, evident.
  • Baze de bază în PHP și MySQL - Vă recomandăm tutorialele Tizag PHP și MySQL, deoarece acestea acoperă mai mult decât suficient și puteți lucra cu ele într-o zi și le puteți referi din nou atunci când este necesar.
  • Un set de date existent în MySQL.
  • Linia de comandă a accesului PHPMyAdmin pentru a îmbina bazele de date.
  • O singură bază de date cu ambele seturi de date - aceasta înseamnă că fie trebuie să îmbinați tabelele de baze de date WordPress într-o bază de date existentă și să le schimbați wp-config.php pentru a reflecta noile date despre numele de utilizator și parola bazei de date; sau importați un set de date existent în baza de date WordPress. Este mai ușor dacă nu aveți un alt sistem bazat pe date. În orice caz, am să presupun că ați făcut deja acest pas - verificați articolul meu despre cum să faceți o copie de rezervă completă a bazei de date prin intermediul unei linii de comandă SSH Cum să faceți backup pe site-ul dvs. prin linia de comandă SSH Cum să faceți copii de siguranță ale site-ului prin SSH Linia de comandă Backup-ul site-ului sau blog-ul dvs. poate fi o sarcină scumpă și dificilă, necesitând o varietate de plugin-uri sau planuri suplimentare de la furnizorul dvs. de găzduire - dar nu trebuie să fie într-adevăr. Dacă aveți SSH ... Citiți mai multe dacă aveți nevoie de indicii acolo.

Acest tutorial este la fel de avansat ca și cum vom ajunge la MakeUseOf, dar ar trebui să deschidă o lume a posibilităților pentru tine.

De ce aș face asta??

În ciuda numeroaselor plugin-uri și extensii disponibile în WordPress, uneori aveți deja un set de date și migrați-l într-un format care vă place WordPress ar fi mai greu decât merită - mai ales dacă aveți apoi un alt sistem de care aveți nevoie să interopeați.

Astăzi, voi lua exemplul unei baze de date simple despre informațiile despre clienți și vom crea un șablon de pagină care afișează acești clienți - numai pentru utilizatorii înregistrați WordPress (deși pagina în sine va fi accesibilă din partea din față a site-ului ).

Ca referință pentru numele coloanelor și tabelelor din baza de date, este posibil să considerați că este util să instalați pluginul Browser de bază de date, care vă va permite să rulați de bază Unde și ordine de către interogări pentru a testa codul dvs. SQL. Iată o captură de ecran cu un set de date pe care l-am creat - în acest caz, un tabel numit Clienți, care conține câteva informații de bază despre fiecare dintre clienții mei foarte importanți.

Ce exact avem de făcut aici?

  • Crearea unui nou șablon de pagină pe care să putem aplica apoi un anumit cod PHP.
  • Privind cum să creați o interogare personalizată în baza de date și apoi să analizați rezultatele - utilizând clasele de baze de date încorporate WordPress.
  • Privind permisiunile în cazul în care doriți să restricționați accesul.

Efectuarea unui șablon personalizat

Dacă doriți să utilizați un cod propriu PHP, cel mai simplu mod de a face acest lucru este să creați un șablon personalizat, apoi să aplicați șablonul pe o anumită pagină pe care o creați în WordPress. Începeți prin deschiderea fișierelor tematice și duplicarea page.php (sau single.php dacă nu există una). Redenumiți-i ceva evident, cum ar fi “template-customers.php” așa cum am ales.

În partea de sus a fișierului, trebuie să-i spunem lui WordPress că acesta este un șablon personalizat. Faceți acest lucru adăugând următoarele (acesta este un comentariu de stil PHP, așa că ar trebui să fie după orice etichetă de deschidere PHP dacă este prezent):

/ * Nume model: Clienți * /

Evident, spune-i ce vrei.

Acum, găsiți funcția de conținut principal. Puteți să o ștergeți dacă doriți, dar voi adăuga codul suplimentar după el. Cu tema implicită de douăzeci și unsprezece, căutați:

Dar, în majoritatea temelor, va fi ceva de genul:

Acesta este bitul care afișează conținutul postului dvs., deci orice adăugați după acesta va fi afișat imediat după zona principală de conținut. Doar pentru a verifica dacă totul funcționează, să adăugăm o declarație ecologică de bază și să salvăm fișierul.

Înainte de a putea verifica acest lucru, va trebui să creați o pagină pe pagina de administrare WordPress și să aplicați șablonul de pagină pentru acesta.

Publicați și verificați pagina pentru a vedea dacă declarația dvs. de ecou a funcționat.

Clasa de interogări personalizate

Pentru a obține acces direct la baza de date, tot ce trebuie să faceți este să utilizați obiectul $ wpdb făcându-l global. Aceste trei linii ar trebui să o facă - înlocuiți declarația de ecou generic pe care am făcut-o mai devreme cu aceasta:

get_results ("SELECT * FROM clienți;"); print_r ($ clienti); ?>

Salvați și actualizați pagina. funcția print_r () doar scapă toate datele de la obiectul clientului - deci ar trebui să vedeți că instrucțiunea dvs. SQL simplu pentru a selecta totul de la masa clientului a funcționat bine. Acum, tot ce trebuie să faceți este să analizați rezultatele la ceva util. Desigur, puteți pune orice instrucțiune SQL select în get_results () metodă, dar nu sunt aici pentru a vă învăța SQL, astfel încât să rămânem în continuare să luăm totul pentru moment.

Pentru a analiza rezultatele în ceva mai semnificativ, voi folosi doar o masă de bază pentru moment. Inlocuieste print_r cu următorul cod (nu-ți face griji, o să adaug codul complet mai târziu dacă nu vrei să-l faci împreună):

ecou ""foreach ($ clienți ca $ client) ecou""ecou""ecou""ecou""ecou""ecou""; echo"
"$ De client> numele.""$ De client> e-mail.""$ De client> telefon.""$ De client> adresa."
„;

Odată ce ai fiecare obiect al clientului în interiorul unui pentru fiecare, puteți accesa cu ușurință numele câmpului $ De client> FIELD_NAME - într-adevăr nu ar putea fi mai simplu.

Securizarea lucrurilor

În acest caz, nu doresc cu adevărat ca datele mele despre clienți să fie afișate doar pentru oricine și să fie indexate de motoarele de căutare - dar tot vreau să o afișeze pe frontul afișat folosind acest șablon; deci ce putem face? Ușor, vom folosi WordPress condițional is_user_logged_in (), și afișați un mesaj rapid dacă nu sunt. Iată întregul bloc de cod din nou cu noua condiționată adăugată:

get_results ("SELECT * FROM clienți;"); ecou ""foreach ($ clienți ca $ client) ecou""ecou""ecou""ecou""ecou""ecou""; echo"
"$ De client> numele.""$ De client> e-mail.""$ De client> telefon.""$ De client> adresa."
"altceva: echo" Ne pare rău, numai utilizatorii înregistrați pot vedea aceste informații "; endif;?>

Salvați și actualizați, și ar trebui să vedeți în continuare conținutul. Cu toate acestea, deconectați-vă, atunci reîmprospătați pagina și veți vedea acum “Ne pare rău, doar utilizatorii înregistrați ... ” mesaj.

Dacă doriți să restrângeți acest lucru la anumite niveluri de utilizatori, nu pe toți utilizatorii înregistrați, atunci veți utiliza current_user_can () condiționată în schimb, împreună cu o capacitate asociată (citiți mai multe despre capabilități pe codul). Acest lucru ar verifica pentru utilizatorii de administrare, de exemplu - singurii utilizatori care pot gestiona opțiunile de plugin:

current_user_can ('manage_options')

rezumat

Am de gând să-l lăsa acolo azi ca orice altceva ar deveni un SQL Cum de a edita mii de mesaje Wordpress cu doar o comandă SQL Cum de a edita mii de mesaje Wordpress cu doar o comandă SQL Creșterea unui blog durează ani, de durere și de luptă. Apoi, există tranziții majore, când îți dai seama că trebuie să faci unele schimbări majore și va lua ... Citește mai mult tutorial sau cum să-ți faci stilul cu CSS. Cerul este într-adevăr limita cu WordPress și sper că acest lucru este util pentru unii dintre voi în proiectele WordPress.

Săptămâna viitoare voi aborda subiectul ușor mai complicat despre cum să inserați datele înapoi în baza de date personalizată folosind un formular din pagină și un pic de magie AJAX / jQuery.

Nu aveți încă o instalare WordPress? Check out ghidul nostru pentru a instala WordPress pe Bluehost Cum să instalați WordPress pe Bluehost Cum să instalați WordPress pe Bluehost Bluehost este printre cele mai mari, cele mai populare furnizori de gazduire web. Iată un ghid simplu despre cum să instalați WordPress pe Bluehost. Citeste mai mult .

Explorați mai multe despre: Instrumentele Google pentru webmasteri, Pluginurile Wordpress.