WordPress-laajennuksen kattilalevy 101: Aloittaminen

WordPress-laajennusten perustamisen jälkeen noin 10 vuotta sitten ei paljon ole muuttunut tapaan, jolla kirjoitamme niitä. Siellä on päälaajennustiedosto, jossa on otsikko, jota seuraa villi länsi pohjimmiltaan. Koukkujen käytön lisäksi ei ole standardoitua tapaa tehdä plugineja.


Tämä ei ole välttämättä ongelma. On monia yksinkertaisia ​​laajennuksia, jotka eivät tarvitse hallintokehystä, ja jotkut ihmiset osaavat kirjoittaa täysin johdonmukaisia ​​menettelytapoja. Laajennusten koodin laatu ei yleensä ole paras, kehys tai metodologia menisi pitkälle sen nostamisessa.

Tässä artikkelissa tarkastelen yhtä mahdollista ratkaisua – WordPress-laajennuksen kattilalevy. Sen on tarkoitus olla lähtökohta laajennuksen kehittämiselle, oliopohjainen tapa luoda standardoitu laajennus. Koska se on koodattu OOP-periaatteisiin, se on tarkoitettu lähinnä välikoodereille, mutta voit käyttää sitä helposti myös aloittelijana, jos tiedät, mikä menee mihin. Tämän artikkelin loppuun mennessä sinun pitäisi tietää, mitä ja miten voit aloittaa sen käytön – riippumatta koodauskokemuksesta.

Tiedoston yleinen rakenne

Kattilalevy on tarkoitettu käytettäväksi Github-arkistona, joten päähakemisto sisältää tiedostoja, jotka yleisesti löytyvät Github-arkistoista. README.md-tiedosto on yleinen readme ja näkyy päävarasto-sivulla kuvauksena. CHANGELOG.md-tiedosto on tarkoitettu muutosten nauhoittamiseen version välillä .gitignore-tiedosto on tarkoitettu tiedostojen asettamiselle, jotka tulee jättää huomioimatta tiedostojen kanssa työskenneltäessä..

Täällä olevan pääkansion laajennuksen nimi on, johon laajennus tallennetaan. Sen rakenne noudattaa WordPress-arkistoa, ja voit "ilmoittautua" tämä kansio SVN-laajennuksen repo-tiedostoon. Oletuksena se sisältää omaisuuskansion, joka tallentaa pluginisi kuvat ja kuvakaappaukset, sekä runko-kansion, joka sisältää laajennuksen koodin.

Runkokansio on mitä plugin sisältää, voit liittää tämän kansion WordPress-asennukseen ja aktivoida laajennuksen. Tarkastelemme tämän kansion sisältöä yksityiskohtaisesti vähän myöhemmin. Perustetaan kauppa ennen kuin teemme sen.

uusi-plugin

Asennat kaiken

Kaikkien näiden kansioiden ja SVN / Git-mahtavuuden omistaminen yhdessä paikassa on hyvä ja hyvä, mutta miten voit käyttää tätä? Et voi tarkistaa koko kansiota suoraan plugins-kansioon, se ei yksinkertaisesti toimi. Vain runkohakemiston tarkistaminen on vaivalloista, eikä sinulla ole pääsyä hakemiston ulkopuolella oleviin tiedostoihin.

Saanen näyttää sinulle suosikkitapani asentamiseen. Minulla on tietokoneellasi kansio, jolla on seuraava rakenne:

  • GitHub
    • Top-Tekijät
    • Helposti suositeltujen Images
    • Twitter-käyttäjän aikajanat
  • html
    • wp-admin
    • wp-content
    • wp-sisältää
    • muut WordPress-tiedostot
  • WordPress
    • top-kirjoittajat
    • helppo varustellun-kuvia
    • twitter-käyttäjä-aikataulut

HTML-kansio on missä WordPress on asennettu. Github-kansio sisältää kaikki WordPress-laajennukseni Githubilta. WordPress-kansio sisältää samat laajennukset, jotka on vedetty SVN: n kautta WordPress-arkistosta.

Symlinkin luominen

Ensimmäinen askel on luoda vaniljaversio WordPress Plugin Boilerplate -sovelluksesta Githubiin. Tarkastelen sen sitten github-kansioon. Seuraavaksi luon linkin WordPress-asennuksen wp-content / plugins-hakemistoon olevan kansion välillä..

Symlinks on viittaus tiedostoon tai kansioon, joka asettuu tavoitteeseensa odotetulla tavalla. Tämän lopputulos on, että jos linkität laajennuksen järjestelmästä mistä tahansa WordPress-hakemistoon, se toimii hienosti. Tämä antaa sinulle seuraavat edut:

  • Voit tallentaa laajennuksia muualle.
  • Voit linkittää kansion symboleilla suuremmasta arkistosta.
  • Voit linkittää saman laajennuksen symboleiksi useisiin asennuksiin.

Symlinkin luominen on helppoa terminaalista tai Windowsin komentokehotteesta. Ehdotan avata yksi ja siirtyä WordPress-asennuksen plugins-hakemistoon. Kirjoita sitten seuraava komento:

# OSX- tai Linux-käyttöjärjestelmälle
ln -s / ehdoton / polku / kohteeseen / github / Oma-plugin-nimi / oma-plugin-nimi / runko my-plugin-name

# Windows
mklink / j C: \ ehdoton \ polku \ kohteeseen \ github \ oma-plugin-nimi my plugin-name

Tämä luo linkin ensimmäisestä polusta toiseen. Ensimmäinen polku on ehdoton polku runkohakemistoon Github-arkistossa. Toinen on vain sen kansion nimi, johon haluat linkittää sen, kun olet jo WordPress-asennuksen plugins-hakemistossa..

Kun olet valmis, sinun pitäisi nähdä uuden laajennuksesi näkyvän, kuten yllä olevassa kuvassa. Meidän on mukautettava asioita, mutta laajennuksemme on nyt käynnissä Github-arkistosta, mikä tekee kehityksestä erä helpompaa.

uudelleennimeäminen

Runkohakemistossa on paljon kansioita ja tiedostoja, aloitetaan niiden uudelleennimeäminen! Ensinnäkin suosittelen nimeämään arkistosi viivoilla ja isoilla kirjaimilla, jotain tällaista: Oma-mahtava-laajennus. Sisäisen pääkansion tulisi olla nimeltään ‘mahtava liitännäinen’. Suosittelen tämän yleissopimuksen käyttöä koko laajennuksessa.

Tiedostojen uudelleennimeäminen on helppoa OSX: ssä. Avaa kaikki kansiot ja valitse kaikki tiedostot, joissa niissä on merkkijono-laajennuksen nimi. Napsauta hiiren kakkospainikkeella nimetä kaikki 14 tiedostoa ja erä nimetä erä uudelleen.

nimeä uudelleen

Windowsista on vähän vaikeampaa, katso tätä HowToGeek artikkeli saadaksesi lisätietoja tai mene vain yksi kerrallaan.

Termit kuten "plugin-nimi" ja muut muunnelmat jakautuvat myös koko tiedoston sisältöön. Voit käyttää ylevä, Atom.io tai muut kykenevät tekstieditorit useiden tiedostojen massikorvikkeeksi. Tässä on luettelo korvattavista (varmista, että teet isojen ja pienten kirjaimien haun korvaamisen).

  • PLUGIN_NAME pitäisi tulla my_awesome_plugin
  • PLUGIN_NAME pitäisi tulla My_Awesome_Plugin
  • plugin-nimi pitäisi tulla minun mahtava laajennus

Kun olet valmis, muista täyttää päätiedoston otsikkokommentti (my-awesome-plugin.php) mukauttaaksesi sitä tarpeitasi varten.

Sisällysluettelo

WordPress Plugin Boilerplate sisältää paljon. Ajatuksena on asettaa tiukat ohjeet siitä, mihin voit laittaa asioita. Koukkujen lisäämistä varten on yksi erityinen paikka, esimerkiksi vakiopaikka käyttöliittymätoimintojen lisäämiseksi ja niin edelleen. Katsotaanpa tärkeimpiä puitteiden osia.

Huomaa, että viittaan tiedostoihin, kuten ne on nimetty uudelleen, esimerkiksi: sisältyy / class-my-awesome-plugin.php. Jos olet nimennyt laajennuksesi uudelleen joku muu, sinun on muistettava, että tiedostonimen mahtava plugin-osa on erilainen sinulle.

Aktivointi, deaktivointi ja asennuksen poisto

Kaikkien koodien, jotka haluat suorittaa laajennuksen ollessa aktivoituna, tulisi sisältyä sisältyy / my-awesome-plugin-name-activator.php. Tässä tiedostossa on luokka nimeltä My_Awesome_Plugin_Activator, jonka sisällä on aktivointi () -menetelmä, jota sinun tulisi käyttää.

Älä huolestu, jos et vielä pysty nopeuttamaan esineitä, tiedät mihin asiat sijoitetaan, jotta pääset alkuun.

Deaktivoinnissa suoritettava koodi on sijoitettava sisältyy / my-awesome-plugin-name-deactivator.php. My_Awesome_Plugin_Deactivator -sovelluksen aktivointi () -menetelmä on mitä sinun tulee käyttää.

Luuletko, että tämä on liian monimutkainen? En syytä sinua! Kun aloitat oliokeskeisten käsitteiden käytön, näet tämän edun prosessikoodiin nähden. Jos ei muuta, se tarjoaa erittäin ilmeisen paikan koodisi lataamiseen, mikä on sinänsä valtava apu.

Asennuksen poistamiseksi suositeltava menetelmä on käyttää uninstall.php, jota WordPress Plugin Boilerplate tekee. Koodisi tulisi sijoittaa tiedoston alaosaan.

Koukkujen lisääminen

Koukkuja käsittelee WordPress Plugin Boilerplate hämmästyttävän, mutta se voi tuntua aluksi hiukan raskas. Kaikki koukut tulisi sijoittaa sisältyy / class-my-awesome-plugin.php. Tarkemmin sanottuna My_Awesome_Plugin-luokassa kahden menetelmän puitteissa:

  • define_public_hooks () lisättäessä koukkua, jota käytetään etuosaan
  • define_admin_hooks () lisättäessä koukkua, jota käytetään taustassa

Sen sijaan, että käytät add_action () tai add_filter () kuten tavallisesti, sinun on tehtävä asiat hieman eri tavalla. Näin muokkaat esimerkiksi viestin sisältöä.

$ tätä->kuormaaja->add_action (‘the_content’, $ plugin_public, ‘modify_post_content’);

Ensimmäinen parametri on koukun nimi, toinen on viittaus julkiseen tai järjestelmänvalvojan objektiin. Julkisten koukkujen pitäisi olla $ plugin_public, järjestelmänvalvojien koukkien tulee olla $ plugin_admin. Kolmas parametri on koukussa oleva toiminto.

Vaikka se näyttää taipuisammalta, se standardoi koukkujen lisäämisen kokonaan jakamalla ne kahteen erilliseen ryhmään prosessissa.

Julkinen ja järjestelmänvalvojan sisältö

WordPress-laajennuksen kattilalevy jakaa koukut järjestelmänvalvojan / julkisiin ryhmiin, mutta se ei ole kaikki. Se jakaa kaikki koodisi samalla tavalla pyytämällä sinua kirjoittamaan julkisesti osoitetun koodin julkiseen kansioon ja järjestelmänvalvojan koodin järjestelmänvalvojan kansioon..

Molemmat kansiot sisältävät css-, js- ja osiokansiot. Sinun tulisi sijoittaa käytetty CSS / JS-omaisuus näihin kansioihin ja kirjoittaa malleja ja muita uudelleenkäytettäviä HTML-bittejä osioihin-kansioon. On hienoa luoda uusia tiedostoja osio-kansioon. Itse asiassa siinä se on!

Sinun tulisi kirjoittaa koukutut toiminnot myös näihin kansioihin luokassa vastaaviin hakemistoihin. Kun kiinnitimme modify_post_content -toiminnon yllä olevaan_sisältöön, kerroimme WordPress Plugin Boilerplate: lle, mistä sitä pitää etsiä. Koska lisäsimme tämän yleisön puolelle, WordPress Plugin Boilerplate odottaa sen määrittelevän My_Awesome_Plugin_Public-luokassa, joka on julkisessa kansiossa. Luo tämä toiminto vain luokassa ja kirjoita kaikki muu tavalliseen tapaan.

Resurssit ja riippuvuudet

Jos haluat käyttää ulkoisia resursseja, kuten TGM-laajennuksen aktivointi, sinun on lisättävä se sisällysluetteloon. TGM on yksittäinen tiedosto, nimeltään class-tgm-plugin-activation.php, joka pitäisi sisällyttää class-my-awesome-plugin.php-tiedostoon, load_dependencies () -menetelmän sisällä:

vaadi_once plugin_dir_path (dirname (__FILE__)). ‘Sisältää / luokka-TGM-plugin-activation.php’;

Yleiskatsaus

Etsivätkö kaikki tiedostonimet ja toiminnot? Älä huoli, se ripustetaan melko nopeasti. Itse asiassa muokat yleensä vain kolme tiedostoa:

  • sisältää / class-my-awesome-plugin.php, johon lisäät kaikki koukut ja riippuvuudet.
  • public / class-my-awesome-plugin-public.php on paikka, johon lisäät kaikki julkisiin toimintoihin liittyvät toiminnot.
  • admin / class-my-awesome-plugin-admin.php on minne kaikki järjestelmänvalvojan toiminnot menevät.

Aluksi WordPress Plugin Boilerplate -sovelluksen käyttö voi tuntua vaivalta, mutta se kannattaa lopulta. Palaat vuotta myöhemmin ja tiedät missä kaikki on, laajennuskehitys standardisoidaan kaikille tuotteille ja muut kehittäjät pystyvät selvittämään, mitä myös tapahtuu.

Älä myöskään unohda, että yksinkertaisen widgetin tarjoava laajennus ei välttämättä tarvitse tällaista kehystä. Vaikka WordPress-laajennuksen kattilalevyn käyttö ei hidasta laajennusta, se tukkeuttaa näkymää, jos tarvitset muutama yksinkertainen koodirivi!

Jeffrey Wilson Administrator
Sorry! The Author has not filled his profile.
follow me
    Like this post? Please share to your friends:
    Adblock
    detector
    map