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

Pysäytä laajennuksen suorittaminen ilman riippuvuutta

2

Jos lähestyt suurta osaa WordPress-laajennusten kehittämisestä oliolähtöisestä näkökulmasta, tulet lopulta pisteeseen, jossa et ole juurikaan vuorovaikutuksessa suoraan WordPress-ytimen kanssa.

Ja mielestäni se on hyvä asia. Se on merkki arkkitehtuurista, että rakentelet koodisi oikein. Tuo on:

  1. Sinulla on WordPress perustasolla,
  2. Sinulla on joukko luokkia, jotka sijaitsevat aivan WordPressin yläpuolella ja vastaavat tietojen lähettämisestä WordPressiin ja WordPressistä laajennuksen välillä,
  3. Ja sinulla on loput koodistasi, joka sisältää loput toiminnot.

Se, miten tämä toteutetaan, voi vaihdella, mutta yleinen tapa kuvitella tämän on samalla tavalla kuin minulla on tapana ajatella tavallista N-tason sovellusta, jossa sinulla on tietokerros, sovelluskerros ja käyttöliittymä.

Tätä kertaa lukuun ottamatta sinulla on WordPress, kerros WordPressin ja muun koodisi kanssa kommunikointia varten, ja tiedäthän, loput koodistasi.

Miten laajennus voidaan järjestää.

Joten mitä tapahtuu, kun haluat lopettaa laajennuksen suorittamisen, kun sen on oltava vuorovaikutuksessa kolmannen osapuolen riippuvuuden kanssa, ja sen pitäisi suorittaa vain, jos tämä riippuvuus on olemassa?

Pysäytä laajennuksen suorittaminen

PHP:n ja WordPressin luonteen vuoksi tämä voidaan tehdä joillakin tavoilla. Koodi, jonka aion jakaa, ei määrää tapaa tehdä se.

Sen sijaan tämä on tapa tehdä se (joka on peräisin jostakin, joka on kehitteillä). Lisäksi näytän, kuinka se on vuorovaikutuksessa myös muutamien muiden laajennusosien kanssa.

1 Rakentaja

Jos luet tarpeeksi WordPressistä ja olio-ohjelmointia koskevia artikkeleita, tulet todennäköisesti huomaamaan, että koukkujen määrittämiseen ei tule käyttää konstruktoreita. Ja olen samaa mieltä.

Se luo tarpeettoman kytkentätason ja tekee asioiden testaamisesta vaikeampaa. Mikä sitten on rakentajan tarkoitus WordPress-pohjaisessa koodissa?

Käytän sitä samoista syistä, joita odotat millä tahansa muulla kielellä: Luokan ominaisuuksien alustamiseen. Alla olevassa koodissa näet kolme asiaa:

  1. Alustan kiinteistön,
  2. Tarkistan, onko kolmannen osapuolen riippuvuus olemassa,
  3. Jos ei, lisään virheilmoituksen,
  4. Päivitän kiinteistön.

Toki, se on monisanainen, mutta se ei myöskään turvaudu älykkääseen koodiin arvojen alustamiseen.

(Mitä vanhemmaksi olen tullut, sitä enemmän olen ihastunut tiettyyn koodiin, koska se helpottaa sen lukemista, poimimista ja käyttöä nopeammin kuin vaihtoehto.)

2 Alustusmenetelmä

Koska emme käytä konstruktoria työskennelläksemme WordPress-koukkujen kanssa, tämän toiminnon pitäisi olla toisen menetelmän yhteydessä.

Tämä antaa meille omistetun paikan tämäntyyppisten toimintojen sijoittamiseen, irroittamiseen muusta luokasta ja sen vuorovaikutukseen WordPressin kanssa vain, kun menetelmää kutsutaan erikseen.

Mutta muista, että koko asian pointti liittyy laajennuksen suorittamisen pysäyttämiseen – ei siihen, mihin koukut sijoittaa.

Joten sanotaan, että kolmannen osapuolen riippuvuutta ei ole olemassa, mitä sitten? Muista, että konstruktoriin asetettiin ominaisuus, jonka avulla voimme määrittää, pitäisikö meidän edetä koukkujen asettamisessa vai ei:

Ja kun se on paikallaan, muu koodi ei toimi.

Paljon sanoja, vähän koodia

Se kuulostaa suurelta selitykseltä niin pienelle koodille.

Mutta osa tästä on myös yrittää välittää WordPress-pohjaisen projektin osien erottamisen tärkeydestä muusta ytimestä, jotta osat voivat olla vuorovaikutuksessa itsensä kanssa ilman, että heidän tarvitsee puhua ytimen kanssa koko ajan.

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