✅ WEB ja WordPressi uudised, teemad, pistikprogrammid. Siin jagame näpunäiteid ja parimaid veebisaidi lahendusi.

CRUD-süsteemi loomine WordPressis – wpDataTables Tables Plugin

21

See artikkel WordPressis CRUD-süsteemi loomise kohta avaldati 2014. aastal. Märkasime, et see teema muutus veelgi aktuaalsemaks, mistõttu otsustasime sellele uue ilme anda.

Mis on CRUD-süsteem, kuidas integreerida CRUD-süsteem MySQL-i jaoks oma WordPressi saidile, millised on erinevate lähenemisviiside kasutamise plussid ja miinused?

Mis on CRUD-süsteem?

Lühend CRUD tuleb sõnadest C reate, R ead, U pdate, D elete. Mis teisisõnu tähendab andmehaldussüsteemi. Veebis tähendab see tõenäoliselt tarkvara, mis haldab teie andmebaasi kirjeid. Tavaliselt viitab see MySQL-ile, PostgreSQL-ile, MS SQL-ile või teistele andmebaasimootoritele.

Suurepärane ja võib-olla kõige populaarsem näide CRUD-süsteemist on phpMyAdmin. PHPMyAdmin on tööriist, mida kasutavad peaaegu kõik veebiarendajad MySQL-i andmete võrgus haldamiseks. See sai nii laialt levinud, et praegu võib seda nimetada tavaliseks MySQL-i andmebaaside haldamise tööriistaks. Tänapäeval on see hostiteenuse pakkujate juures peaaegu igale CPaneli tööriistale eelinstallitud.

CRUD-süsteemide standardseid kasutusjuhtumeid on tuhandeid. Näiteks – peaaegu iga kataloog, kirjelogi, statistiline info. Põhimõtteliselt eeldaks kõik teabe salvestamisega seotud teabe bittide lisamist, muutmist ja eemaldamist. Siis tulevad mängu CRUD-süsteemid.

Miks vajate WordPressis CRUD-süsteemi?

WordPress ise on võimas CMS (sisuhaldussüsteem), mis on ka CRUD-süsteemi erijuhtum. Nagu teate, saavad WordPressi saidi kasutajad lisada postitusi ja lehti, neid muuta või kustutada. Kuid mõnikord tekib olukord, kus peate haldama mõnda andmebaasiandmeid otse WordPressi kasutajaliidesest, mis üldiselt pole postitatud ega lehtedega seotud ega sobi WordPressi taksonoomiatesse. Muu hulgas võib see olla üks järgmistest olukordadest, kui vajate WordPressis sõltumatut CRUD-süsteemi:

  • Soovite, et teie WordPressi saidil oleks veajälgija, sisestuslogi või mõni muu andmesisestustööriist;
  • Või näiteks soovite lubada mõnel kasutajal muuta teie saidi esiotsas äriga seotud andmeid, ilma et nad annaksid neile juurdepääsu WordPressi saidi administraatoripaneelile või isegi avaldamata tõsiasja, et sait töötab WordPressis.
  • Teine näide on nõue lubada mõnel kasutajal DB tabelit redigeerida. Näiteks muuta esitatud tellimust, muuta mõningaid isikuandmeid jne.

Ja sarnased taotlused.

Kuidas integreerida CRUD-süsteemi WordPressi saidile?

Lihtsaim lahendus – proovige leida sobiv pistikprogramm

Esiteks – veenduge, et teil on seda tõesti vaja. Paljud ülesanded ei ole ainulaadsed ja tõenäoliselt leiate oma vajadustele vastava pistikprogrammi. Näiteks kui vajate veajälgijat, nagu eespool mainitud, saate seda või seda kontrollida ja alla laadida .

Ja kui vajate midagi üldisemat, näiteks redigeerida erinevaid MySQL-i tabeleid WordPressi esiosast, proovige meie wpDataTablesi pistikprogrammi, mis on põhimõtteliselt WordPressi CRUD-süsteem. Funktsioonide loendit ja selle toimimise näiteid näete siit. Või isegi proovige tasuta Lite versiooni WordPressi pistikprogrammide hoidlas.

Väärib märkimist, et wpDataTables ei sea mingeid piiranguid andmestruktuurile, veergude või ridade arvule, toetab paljusid andmetüüpe ja erinevaid redaktori sisestustüüpe. Näiteks teatud tüüpi, nagu manused või DateTime. Samuti võimaldab see redigeerida andmeid hüpikaknavormi redaktori, tekstisisese redaktori või isegi arvutustabeli Exceli-laadse redaktori abil .

Kui tunnete endiselt, et peate WordPressis looma kohandatud CRUD-süsteemi, peaksite selle tegemiseks valmistuma tõsiseks kodeerimiseks.

Käivitage uus WordPressi pistikprogramm

Kui arvate, et ükski pistikprogramm ei vasta teie vajadustele, looge oma pistikprogramm! See ei pruugi olla nii hirmutav, kui esmapilgul tundub. Alustuseks lugege seda toredat õpetust WordPressi pistikprogrammi nullist loomise kohta. Ja muidugi ka see WordPress Codexis.

Mis tahes pistikprogrammi (sh WordPressi pistikprogrammi CRUD-süsteemi) loomise esimene samm on failide õige struktureerimine.
Tavaline lähenemine on paigutada põhikirje CRUD-punkti fail plugina juurkataloogi ja valmistada ette mitu alamkausta:

  • Varad – kõik javascriptid, laaditabelid, fondid, pildid ja muud staatilised varad, mis on teie CRUD-süsteemi jaoks vajalikud;
  • Allikas – PHP põhiklasside kaust, mis täidab kõiki CRUD-funktsioone taustasüsteemis;
  • Lib – kaust mis tahes kolmanda osapoole komponentide jaoks, mida võiksite oma CRUD-süsteemis kasutada;
  • Mallid – HTML-mallide kaust, mis on teie CRUD-süsteemi kasutajaliides.

Neid võib olla rohkem (kontrollereid, lühikoodikäsitlejaid ja muid) – aga see on alustuseks miinimum.

Redaktori tausta loomine (PHP klassid)

Esiteks on teil vaja taustaosa: PHP-skripti, mis tegelikult teeks CRUD-i töid. Selleks peate selle ühendama WordPressi DB-ga (globaalne $ wpdb objekt). Siit saate lugeda toredat õpetust WordPressi andmebaasi ja $wpdb objekti kasutamise kohta pistikprogrammides.

Kui kasutate välist andmebaasi, peate näiteks kasutama eraldi PDO ühendust või lihtsalt sisseehitatud PHP MySQLi funktsioone (kui teie andmebaasimootor on MySQL).

Teie ülesandeks selles etapis on valmistada ette klasside ja meetodite komplekt, mis võtab kasutajaliidese andmeid mingil eeldataval kujul vastu, kinnitab ja desinfitseerib need (kogu sisendi puhastamine on kõigi CRUD-süsteemide jaoks väga oluline turvameede) ja teostab toimingud INSERT, UPDATE ja DELETE teie andmebaasis.

Nagu eelmises etapis kirjeldatud, kuuluksid need põhifailid teie uue CRUD WordPressi pistikprogrammi lähtekausta.

Esiosa liidese loomine (HTML, JS, PHP)

Kui andmebaasihaldusklassid ja -meetodid on ette valmistatud, vajab teie pistikprogramm kasutajaliidest teie uue CRUD-süsteemiga WordPressis. Parim lahendus oleks koostada uutes pistikprogrammifailides mallide komplekt ja väljastada see lühikoodiga kõikjal, kus vajate.

Mõttekas on hoida HTML-malle alati koodist eraldatuna (MVC lähenemine) ja valmistada ette loogiliselt eraldatud mallifailid, nt: “edit.tpl.php", “delete.tpl.php”, “list.tpl.php”. ” jne – iga CRUD lehe või toimingu mall.

Siit saate lugeda suurepärast koodeksiartiklit WordPressi lühikoodi API kohta.

Ühendage esiots tagaosaga AJAX-kõnede (JS) abil

Muidugi saate seda teha "vana kooli stiilis", lihtsa vormi esitamise ja lehe uuesti laadimisega. Kuid tänapäeval pole see enam levinud lähenemisviis. AJAX-i kasutamine on selle asemel standardne lähenemisviis kas jQuery või muude teekide, näiteks Angulari, kaudu. Seega on meie soovitus võtta veidi aega ja uurida AJAX-i kasutamist oma WordPressi pistikprogrammides. Siin on suurepärane Codexi artikkel selle kohta, kuidas AJAX-i oma pistikprogrammides kasutada – nii administraatori kui ka esiotsa poolel.

Saate panna JS-koodi kausta "varad", mille koostasite esimeses etapis.

Testige, täpsustage ja siluge

Kui juurutusosa on tehtud – võtke veidi aega ja testige oma uut CRUD-süsteemi WordPressis. Te ei saa algusest peale kõiki vigu märgata, kuid CRUD-i rutiinsete toimingute mitu korda kordamine erinevate näidetega (eelistatavad "serva" juhtumid – nt väga suured andmemahud, mitu korda samal nupul klõpsamine jne) aitab teid alati. enamiku vigade tabamiseks – ja need juhtuvad alati, kui rakendate midagi uut.

CRUD vs REST: mis vahet on

REST on arhitektuurne stiil võrgurakenduste loomiseks, mis põhinevad klient-serveri olekuta vahemällu salvestaval sideprotokollil, st HTTP-protokollil. CRUD on akronüüm sõnadest CREATE, READ, UPDATE ja DELETE, mis on programmeerimise püsiva salvestamise põhifunktsioonid.

CRUD toimingud, st CREATE, READ, UPDATE, DELETE, on sarnased põhikäskudega REST, st GET, PUT, POST, DELETE, mis põhjustab nende kahe segadust. Mis on CRUD? Mis on REST? Mis on CRUD-i määratlus CRUD vs REST? Kas REST on pelgalt CRUDi koopia?

Need on kõik väga asjakohased küsimused, millele see artikkel kavatseb üksikasjalikult vastata!

Kuidas REST töötab?

Te ei saa aru sellistest terminitest nagu REST API, REST-teenused, CRUD-maatriks või CRUD-andmebaas või REST-programmeerimine, kui te ei mõista nende kahe protsessi erinevust nende toimimise osas. Segadus kaob, kui teate seda erinevust.

Saate töötada REST-iga mis tahes ressursiga, olgu see siis meediumifail, dokument, veebisait jne. REST-i kallal ei ole piiranguid. HTML-i saate kasutada ainult suhtlusprotokollina, et osutada ressurssidele. REST tähistab esinduslikku riigiülekannet.

REST näitab, et seal tähistab iga eristav URL mõnda objekti, millele pääsete juurde HTTP GET-i kaudu, samuti saate seda muuta ja kustutada HTTP POST, PUT või DELETE kaudu.

Kuidas CRUD töötab?

CRUD-i saate rakendada ainult andmebaasikirjetele ja te ei saa luua CRUD-i API-sid, nagu loote REST API-sid. CRUD rakendus on piiratud andmebaasidega, mistõttu pole CRUD erinevalt RESTist arhitektuuristiil, vaid tsükkel. Kõik rakendused ja veebisaidid sisaldavad erinevaid CRUD-tsükleid.

Näiteks saab e-kaubanduse veebisaidi külastaja LUUA konto, VÄRSKENDADA kontot, LUGEDA teavet ja KUSTUTADA konto. See on täielik CRUD-tsükkel, mis hõlmab iga CRUD-i toimingut.

Näiteks samal e-kaubanduse veebisaidil saab külastaja LUUA kauba e-korvis ja seejärel läbida kogu CRUD-i tsükli, LUGEDES, VÄRSKENDATE ja isegi KUSTUTADA.

RESTi alus ja põhimõtted

Representational State Transferi põhikäsud – akronüüm REST – keerlevad ümber objekti või ressursi, mida võib kirjeldada kui kõike, mida saate HTTP-protokolli abil paljastada. REST-ressursside näited: pilt, veebisait, dokument, teenus. Taevas on limiidiks.

REST on rakenduste programmeerimisliides ehk API või hajutatud multimeediumi jaoks mõeldud arhitektuur. API on veebiteenus, mis järgib REST arhitektuuri põhimõtteid. Seega kutsub REST iga API ühe HTTP päringumeetodi GET, PUT, POST ja DELETE kaudu.

RESTful arhitektuuri kuus juhtpõhimõtet

  1. Kliendi-serveri mandaat

Klient-server mandaat rõhutab asjaolu, et REST esindab hajutatud meetodit, mis tugineb kliendi ja serveri eraldamise olemusele. REST-teenus sisaldab mitmeid võimalusi ja täidab taotlusi. Klient esitab päringud ja server võtab need vastu või keeldub.

  1. Kodakondsusetus

CRUD-süsteemi loomine WordPressis - wpDataTables Tables Plugin

Kodakondsusetus piirab tarbija ja serveri vahel esitatavate päringute tüüpi. Tegelikult käivitab päring klienditeeninduse suhtluse, kus päring sisaldab kogu teavet, mida server vajab vastuse saamiseks.

  1. Vahemällu salvestamine

Päringu vahemällu salvestamise eesmärk ei ole kunagi esitada sama taotlust kaks korda, kuna vahemällu salvestamine annab serverile korralduse märgistada vastused vahemällu salvestatavateks või mitte. Selle tulemusena vähendab vahemällu salvestamine kodakondsusetuse tekitatud piiranguid või piiranguid.

  1. Ühtne leping

Ühtne leping välistab mitme sõltumatu liidese kasutamise rakenduse programmeerimisliidese või API sees. REST järgib ühtse lepingu põhimõtteid. Seetõttu jagatakse hüpermeedia ühenduste kaudu ühte REST-liidest.

  1. Kihiline süsteem

Kihiline süsteem kasutab liidese arendamiseks ja laiendamiseks mitut sõltumatut kihti. Kuna kihid ei näe üksteise sisse, saab sisestada uusi päringuid ja vahevara, mis ei mõjuta esialgseid käske ega klient-serveri toimimist.

  1. Valikuline: Code-On-Demand

Kuigi klient-server, vahemällu salvestamine, kodakondsuseta olek, ühtne leping ja kihiline süsteem on RESTful rakenduste jaoks kohustuslikud, ei ole nõudmisel kood kohustuslik. Code-on-Demand võimaldab aga klientide loogikal jääda sõltumatuks ja seega värskendada serveri loogikast eraldi.

Mõtete lõpetamine teemal CRUD vs REST

CRUD hõlmab olulisi toiminguid, mida tehakse staatilises andmesalvestuses või andmebaasides, näiteks passiivsete kirjete või objektide käsitlemine. CRUD manipuleerib sisuliselt põhiandmetega.

REST tugineb ressursside esitamisele unikaalsete URL-ide kaudu, kus ressursid on objekti abstraktsioonid, kus näiteks kasutaja kommentaar võib olla ressurss.

Sellisena hõlmab REST enamat kui kommentaaride tabelis kirje. REST käsitleb kirje seost kasutajaressursi ja postituse/kommentaariga, millele see on lisatud. REST on väga kõrgetasemeline API stiil, mis suhtleb keerulise süsteemiga.


Muidugi ei olnud see artikkel täielik õpetus – kuna selle kirjutamiseks kuluks kakskümmend lehekülge. Kuid andke meile teada, kui teil on küsimusi või soovite näha konkreetset samm-sammult näidet ja me koostame teile selle.

Loodame, et sellest oli mingil moel abi.

Täname, et lugesite!

Pildi allikas: http://www.tyseo.net

See veebisait kasutab teie kasutuskogemuse parandamiseks küpsiseid. Eeldame, et olete sellega rahul, kuid saate soovi korral loobuda. Nõustu Loe rohkem