✅ WEB- ja WordPress -uutiset, -teemat, -laajennukset. Täällä jaamme vinkkejä ja parhaita verkkosivustoratkaisuja.

CRUD-järjestelmän luominen WordPressissä – wpDataTables Tables Plugin

25

Tämä artikkeli CRUD-järjestelmän luomisesta WordPressissä julkaistiin jo vuonna 2014. Huomasimme kuitenkin, että aihe tuli entistä ajankohtaisemmaksi, joten päätimme antaa sille uuden ilmeen.

Mikä on CRUD-järjestelmä, kuinka integroida CRUD-järjestelmä MySQL:lle WordPress-sivustollesi, mitkä ovat erilaisten lähestymistapojen käytön edut ja haitat?

Mikä on CRUD-järjestelmä?

Lyhenne CRUD tulee sanoista C reate, R ead, U pdate, D elete. Mikä toisin sanoen tarkoittaa tiedonhallintajärjestelmää. Webissä se tarkoittaisi todennäköisesti ohjelmistoa, joka hallitsee tietokantaasi. Yleensä se viittaa MySQL-, PostgreSQL-, MS SQL- tai muihin tietokantakoneisiin.

Upea ja ehkä suosituin esimerkki CRUD-järjestelmästä on phpMyAdmin. PHPMyAdmin on työkalu, jota lähes jokainen verkkokehittäjä käyttää MySQL-tietojen hallintaan verkossa. Se levisi niin laajalle, että tällä hetkellä sitä voidaan kutsua vakiotyökaluksi MySQL-tietokantojen hallintaan. Nykyään se on esiasennettu melkein kaikkiin hosting-palvelujen tarjoajien CPanel-työkaluihin.

CRUD-järjestelmille on tuhansia vakiokäyttötapauksia. Esimerkiksi – melkein mikä tahansa luettelo, kirjausloki, tilastotiedot. Periaatteessa kaikki tiedon tallentamiseen liittyvä vaatisi informaatiobittien lisäämistä, muokkaamista ja poistamista. Silloin CRUD-järjestelmät tulevat peliin.

Miksi tarvitset CRUD-järjestelmän WordPressiin?

WordPress itsessään on tehokas CMS (Content Management System), joka on myös CRUD-järjestelmän erikoistapaus. Kuten tiedät, WordPress-sivuston käyttäjät voivat lisätä viestejä ja sivuja, muokata tai poistaa niitä. Mutta joskus kohtaat tilanteen, jossa joudut hallitsemaan joitain tietokantatietoja suoraan WordPress-käyttöliittymästä, joka ei yleensä ole postattua tai sivuun liittyvää ja joka ei sovi kauniisti WordPressin taksonomioihin. Se voi olla muun muassa yksi näistä tilanteista, jolloin tarvitset itsenäisen CRUD-järjestelmän WordPressissä:

  • Haluaisitko WordPress-sivustollesi virheseurannan, merkintälokin tai jonkin muun tiedonsyöttötyökalun;
  • Tai esimerkiksi haluat sallia joidenkin käyttäjien muokata joitain liiketoimintaan liittyviä tietoja sivustosi käyttöliittymästä antamatta heille pääsyä WordPress-sivuston hallintapaneeliin tai ehkä jopa paljastamatta, että sivusto toimii WordPressillä.
  • Toinen esimerkki on vaatimus sallia joidenkin käyttäjien muokata tietokantataulukkoa. Esimerkiksi muokata tehtyä tilausta, muokata joitain henkilötietoja jne.

Ja vastaavia pyyntöjä.

Kuinka integroida CRUD-järjestelmä WordPress-sivustoon?

Helpoin ratkaisu – yritä löytää sopiva laajennus

Ensinnäkin varmista, että tarvitset sellaisen. Monet tehtävät eivät ole ainutlaatuisia, ja voit todennäköisesti löytää tarpeisiisi sopivan laajennuksen. Jos esimerkiksi tarvitset virheenseurantaohjelman, kuten edellä mainittiin, voit tarkistaa ja ladata tämän tai tämän.

Ja jos tarvitset jotain yleisempää, kuten erilaisten MySQL-taulukoiden muokkaamista WordPressin käyttöliittymästä, kokeile wpDataTables – laajennusta, joka on pohjimmiltaan WordPressin CRUD-järjestelmä. Voit nähdä luettelon ominaisuuksista ja esimerkkejä sen toiminnasta täältä. Tai jopa kokeile ilmaista Lite-versiota WordPress-laajennusten arkistosta.

On syytä huomata, että wpDataTables ei aseta mitään rajoituksia tietorakenteelle, sarakkeiden tai rivien määrälle, se tukee monia tietotyyppejä ja erilaisia ​​​​editorin syöttötyyppejä. Esimerkiksi tietyt tyypit, kuten liitteet tai DateTime. Lisäksi se mahdollistaa tietojen muokkaamisen ponnahdusikkunaeditorin, upotetun editorin tai jopa taulukkolaskentamallin kaltaisen editorin avulla .

Jos sinusta tuntuu edelleen, että sinun on rakennettava mukautettu CRUD-järjestelmä WordPressiin, sinun tulee valmistautua vakavaan koodaukseen saadaksesi sen valmiiksi.

Aloita uusi WordPress-laajennus

Jos luulet, että mikään laajennus ei vastaa tarpeitasi, luo oma! Se ei ehkä ole niin pelottavaa kuin miltä näyttää ensi silmäyksellä. Aloita lukemalla tämä mukava opetusohjelma WordPress-laajennuksen luomisesta tyhjästä. Ja tietysti myös tämä WordPress Codexissa.

Ensimmäinen aloitusvaihe, kun luot minkä tahansa laajennuksen – mukaan lukien CRUD-järjestelmän WordPress-laajennuksessa – on tiedostojen jäsentäminen oikein.
Tavallinen tapa on sijoittaa päämerkinnän CRUD-pistetiedosto laajennuksen juurihakemistoon ja valmistella useita alikansioita:

  • Assets – kaikki javascriptit, tyylitaulukot, fontit, kuvat ja muut staattiset resurssit, joita tarvitaan CRUD-järjestelmässäsi;
  • Lähde – kansio "ydin" PHP-luokille, jotka suorittavat kaikki CRUD-toiminnot taustalla;
  • Lib – kansio kolmansien osapuolien komponenteille, joita saatat haluta käyttää CRUD-järjestelmässäsi;
  • Mallit – kansio HTML-malleille, jotka tulevat olemaan CRUD-järjestelmän käyttöliittymä.

Niitä voi olla enemmän (ohjaimia, lyhytkoodikäsittelijöitä ja muita) – mutta se on alkuun minimi.

Luo editorin tausta (PHP-luokat)

Ensinnäkin tarvitset taustaosan: PHP-skriptin, joka todella tekisi CRUD-työt. Tätä varten sinun on yhdistettävä se WordPress DB:hen (globaali $wpdb-objekti). Voit lukea täältä mukavan opetusohjelman WordPress-tietokannan ja $wpdb-objektin käyttämisestä liitännäisissäsi.

Jos käytät ulkoista tietokantaa, sinun on käytettävä esim. erillistä PDO-yhteyttä tai vain sisäänrakennettuja PHP MySQLi -toimintoja (jos tietokantamoottorisi on MySQL).

Sinun tehtäväsi tässä vaiheessa on valmistella joukko luokkia ja menetelmää, joka hyväksyy tiedot käyttöliittymästä jossain odotetussa muodossa, validoi ja puhdistaa sen (kaiken syötteen puhdistaminen on erittäin tärkeä turvatoimi kaikille CRUD-järjestelmille) ja suorittaa INSERT, UPDATE ja DELETE -toiminnot tietokannassasi.

Kuten edellisessä vaiheessa kuvattiin, nämä "ydin"-tiedostot kuuluisivat uuden CRUD WordPress -laajennuksen "lähde"-kansioon.

Luo käyttöliittymä (HTML, JS, PHP)

Kun tietokannan hallintaluokat ja -menetelmät on valmisteltu, laajennuksesi tarvitsee käyttöliittymän, jolla käyttäjä voi käyttää uutta CRUD-järjestelmääsi WordPressissä. Paras ratkaisu olisi valmistella joukko malleja uusissa laajennustiedostoissasi ja tulostaa se missä tahansa lyhytkoodilla.

On järkevää pitää HTML-mallit aina erillään koodista (MVC-lähestymistapa) ja valmistella loogisesti erotetut mallitiedostot, esim.: "edit.tpl.php", "delete.tpl.php", "list.tpl.php". ", jne. – malli jokaiselle CRUD-sivulle tai toiminnolle.

Täältä voit lukea upean Codex-artikkelin WordPress Shortcode API:sta.

Yhdistä käyttöliittymä takapäähän AJAX-puheluilla (JS)

Tietysti voit tehdä sen "vanhan koulun tyyliin", yksinkertaisilla lomakkeiden lähettämisellä ja sivujen uudelleenlatauksella. Nykyään se ei kuitenkaan ole enää yleinen lähestymistapa. AJAXin käyttäminen on sen sijaan tavallinen lähestymistapa joko jQueryn tai muiden kirjastojen, kuten Angularin, kautta. Suosittelemme siis käyttämään aikaa ja tutkimaan AJAXin käyttöä WordPress-laajennuksissa. Tässä on loistava Codex-artikkeli AJAX:n käyttämisestä laajennuksissasi – sekä järjestelmänvalvojan että käyttöliittymän puolella.

Voit laittaa JS-koodin "resurssit"-kansioon, jonka valmistit ensimmäisessä vaiheessa.

Testaa, tarkenna ja virheenkorjaus

Kun toteutusosa on valmis – vie aikaa ja testaa uutta CRUD-järjestelmääsi WordPressissä. Et voi havaita kaikkia vikoja alusta alkaen, mutta CRUD-rutiinitoimintojen toistaminen useita kertoja eri esimerkein (suositeltavat "edge"-tapaukset – esim. erittäin suuret tietomäärät, saman painikkeen useita kertoja napsauttaminen jne.) auttaa sinua aina. havaita useimmat viat – ja niitä tapahtuu aina, kun otat käyttöön jotain uutta.

CRUD vs REST: Mitä eroa on

REST on arkkitehtoninen tyyli rakentaa verkkosovelluksia, jotka perustuvat asiakas-palvelin, tilattomaan, välimuistiin tallennettavaan tiedonsiirtoprotokollaan eli HTTP-protokollaan. CRUD on lyhenne sanoista CREATE, READ, UPDATE ja DELETE, jotka ovat ohjelmoinnin jatkuvan tallennuksen perustoiminnot.

CRUD-toiminnot, eli CREATE, READ, UPDATE, DELETE, ovat samanlaisia ​​kuin REST-peruskomennot, eli GET, PUT, POST, DELETE, mikä johtaa sekaannukseen näiden kahden välillä. Mikä on CRUD? Mikä on REST? Mikä on CRUD-määritelmä kohdassa CRUD vs REST? Onko REST pelkkä kopio CRUDista?

Nämä ovat kaikki erittäin tärkeitä kysymyksiä, joihin tässä artikkelissa on tarkoitus vastata yksityiskohtaisesti!

Miten REST toimii?

Et voi ymmärtää sellaisia ​​termejä kuin REST API, REST-palvelut, CRUD-matriisi tai CRUD-tietokanta tai REST-ohjelmointi, jos et ymmärrä näiden kahden prosessin välistä eroa niiden toimintatavan osalta. Hämmennys katoaa, kun tiedät tämän eron.

Voit työskennellä RESTillä minkä tahansa resurssin parissa, olipa kyseessä mediatiedosto, asiakirja, verkkosivusto jne. REST-työskentelylle ei ole rajoituksia. voit käyttää HTML:ää vain viestintäprotokollana osoittaaksesi resurssit. REST on lyhenne sanoista Representational State Transfer.

REST osoittaa, että siellä jokainen erottuva URL edustaa jotakin objektia, johon voit päästä HTTP GET:n kautta sekä muokata ja poistaa HTTP POST:n, PUT:n tai DELETE:n kautta.

Miten CRUD toimii?

Voit käyttää CRUD:ia vain tietokantatietueisiin, etkä voi luoda CRUD-sovellusliittymiä kuten luot REST-sovellusliittymiä. CRUD-sovellus on rajoitettu tietokantoihin, minkä vuoksi CRUD, toisin kuin REST, ei ole arkkitehtuurityyli, vaan sykli. Kaikki sovellukset ja verkkosivustot sisältävät erilaisia ​​CRUD-jaksoja.

Esimerkiksi verkkokauppasivuston vierailija voi LUODA tilin, PÄIVITTÄITÄ tilin, LUE tiedot ja POISTAA tilin. Se on täysi CRUD-sykli, joka sisältää jokaisen CRUD-toiminnon.

Esim. samalla verkkokauppasivustolla vierailija voi LUODA tuotteen e-kärryyn ja suorittaa sitten koko CRUD-syklin LUKEMAA, PÄIVITYSTÄ ja jopa POISTAmalla tuotteen.

RESTin perusta ja periaatteet

Representational State Transferin peruskomennot – REST-lyhenne – pyörivät objektin tai resurssin ympärillä, jota voidaan kuvata mitä tahansa, jonka voit paljastaa HTTP-protokollan avulla. Esimerkkejä REST-resursseista: kuva, verkkosivusto, asiakirja, palvelu. Taivas on rajana.

REST on sovellusohjelmointirajapinta eli API tai hajautettuun multimediaan tarkoitettu arkkitehtuuri. API on verkkopalvelu, joka noudattaa REST-arkkitehtuurin periaatteita. Näin ollen REST kutsuu jokaista API:ta jollakin HTTP-pyyntömenetelmistä GET, PUT, POST ja DELETE.

RESTful-arkkitehtuurin kuusi pääperiaatetta

  1. Asiakas-palvelin mandaatti

Asiakas-palvelin-mandaatti korostaa sitä tosiasiaa, että REST edustaa hajautettua menetelmää, joka perustuu asiakas-palvelin-erottelun luonteeseen. REST-palvelu sisältää useita ominaisuuksia ja vastaa pyyntöihin. Asiakas tekee pyynnöt ja palvelin hyväksyy tai hylkää ne.

  1. Valtiottomuus

CRUD-järjestelmän luominen WordPressissä - wpDataTables Tables Plugin

Valtiottomuus rajoittaa kuluttajan ja palvelimen välillä lähetettäviä pyyntöjä. Käytännössä se on pyyntö, joka käynnistää asiakaspalvelun viestinnän, jossa pyyntö sisältää kaikki tiedot, joita palvelin tarvitsee vastatakseen.

  1. Välimuisti

Pyynnön välimuistiin tallentamisen tarkoitus ei ole koskaan lähettää samaa pyyntöä kahdesti, koska välimuisti kehottaa palvelinta merkitsemään vastaukset välimuistiin tai ei. Tämän seurauksena välimuistiin tallentaminen vähentää valtiottomuuden aiheuttamia rajoituksia.

  1. Yhtenäinen sopimus

Uniform Contract sulkee pois useiden itsenäisten liitäntöjen käytön sovellusohjelmointirajapinnassa tai API:ssa. REST noudattaa yhtenäisen sopimuksen periaatteita. Siksi yksi REST-rajapinta jaetaan hypermediayhteyksien kautta.

  1. Kerrostettu järjestelmä

Layered System käyttää useita itsenäisiä kerroksia rajapinnan kehittämiseen ja laajentamiseen. Koska kerrokset eivät näe toisiaan sisään, voidaan lisätä uusia pyyntöjä ja väliohjelmistoja, joilla ei ole vaikutusta alkukomentoihin ja asiakas-palvelimen toimintaan.

  1. Valinnainen: Code-On-Demand

Vaikka Client-Server, Caching, Statelessness, Uniform Contract ja Layered System ovat välttämättömiä RESTful-sovelluksille, Code-On-Demand ei ole pakollista. Code-on-Demand mahdollistaa kuitenkin asiakkaiden sisäisen logiikan pysymisen riippumattomana ja päivittämisen siten erillään palvelinlogiikasta.

Lopettaa ajatukset aiheesta CRUD vs REST

CRUD sisältää olennaiset toiminnot, jotka suoritetaan staattisessa tiedontallennustilassa tai tietokantoissa, kuten passiivisten tietueiden tai objektien käsittely. CRUD käsittelee olennaisesti perustietoja.

REST perustuu resurssien esittämiseen yksilöllisten URL-osoitteiden kautta, missä resurssit ovat objektin abstraktioita, jolloin käyttäjän kommentti voi olla esimerkiksi resurssi.

Sellaisenaan REST sisältää enemmän kuin tietueen kommenttitaulukossa. REST kertoo tietueen suhteesta käyttäjäresurssiin ja viestiin/kommenttiin, johon se on liitetty. REST on erittäin korkeatasoinen API-tyyli, joka on vuorovaikutuksessa monimutkaisen järjestelmän kanssa.


Tämä artikkeli ei tietenkään ollut täydellinen opetusohjelma – koska sen kirjoittamiseen menisi kaksikymmentä sivua. Mutta kerro meille, jos sinulla on kysyttävää tai haluat nähdä tietyn vaiheittaisen esimerkin, niin luomme sellaisen sinulle.

Toivomme, että siitä oli jollain tapaa apua.

Kiitos, että luit!

Kuvan lähde: http://www.tyseo.net

Tämä verkkosivusto käyttää evästeitä parantaakseen käyttökokemustasi. Oletamme, että olet kunnossa, mutta voit halutessasi kieltäytyä. Hyväksyä Lisätietoja