A WordPress plugin kazánlapja 101: Hogyan kezdjük el

A WordPress plugin kazánlapja 101: Hogyan kezdjük el

A WordPress plugin kazánlapja 101: Hogyan kezdjük el
СОДЕРЖАНИЕ
02 июня 2020

A WordPress plugins kb. 10 évvel ezelőtti létrehozása óta nem sok minden változott abban, ahogyan megírjuk őket. Van egy fő plugin fájl egy fejlécvel, amelyet alapvetően a Wild West követ. A horgok használatán kívül nincs szabványos módszer a pluginek készítésére.


Ez nem feltétlenül jelent problémát. Sok egyszerű plugin létezik, amelyeknek nincs szükségük a szabályozási keretre, és vannak olyanok, akik tökéletesen koherens eljárási kódot tudnak írni. Ugyanakkor a plugin-ok kódja általában nem a legjobb, a keretrendszer vagy a módszertan nagyban hozzájárul ahhoz, hogy emelték.

Ebben a cikkben egy lehetséges megoldást fogok megnézni – WordPress beépülő kazánlap. Ez a plugin fejlesztésének kiindulópontja, egy objektumorientált módszer egy szabványosított plugin létrehozására. Mivel az OOP elvekkel vannak kódolva, elsősorban közbenső kódolókhoz készült, de könnyen használható, még kezdőként is, ha tudja, hová megy. A cikk végére tudnia kell, hogy mit és mit lehet elkezdeni vele – függetlenül a kódolási tapasztalattól.

Általános fájlszerkezet

A kazánlapot Github-lerakatként kell használni, tehát a főkönyvtár a Github-i reposzokban általában megtalálható fájlokat tartalmazza. A README.md fájl egy általános readme, és a lerakatként jelenik meg a fő adattár oldalán. A CHANGELOG.md fájl a verzió közötti változások rögzítésére szolgál, és a .gitignore fájl olyan fájlok beállítására szolgál, amelyeket a fájlokkal való munka során figyelmen kívül kell hagyni..

A plugin fő neve itt található a fő mappa, ahol a plugin tárolódik. Szerkezete követi a WordPress lerakatot, és te is megteheted "becsekkolás" ezt a mappát az SVN plugin repójához. Alapértelmezés szerint tartalmazza az eszközök mappát, amely a plugin képeit és képernyőképeit tárolja, valamint a csomagtartó mappát, amely a plugin kódját tartalmazza.

A csomagtartó mappája tartalmazza a beépülő modult, beillesztheti ezt a mappát a WordPress telepítésébe, és aktiválhatja a beépülő modult. Kicsit később részletesebben megvizsgáljuk a mappa tartalmát. Mielőtt ezt megtennénk, hozzunk létre üzletet.

Új-plugin

Az összes felállítása

Az összes ilyen mappa és az SVN / Git fantasztikus képesség egy helyen nagyon jó, de hogyan lehet ezt valóban használni? Az egész mappát nem ellenőrizheti egyenesen a plugins mappában, egyszerűen nem fog működni. Csak a törzskönyvtár ellenőrzése gondot okoz, ráadásul nem férhet hozzá a könyvtáron kívüli fájlokhoz.

Hadd mutassam meg kedvenc módját a dolgok felállításához. Van egy mappám a következő struktúrán:

  • GitHub
    • Top-Szerzők
    • Könnyen Kiemelt-Kép
    • Twitter-User-Idővonalak
  • html
    • wp-admin
    • wp-content
    • wp-includes
    • egyéb WordPress fájlok
  • wordpress
    • top-szerzők
    • egyszerű funkcionalitású-képek
    • twitter-user-határidők

A html mappába a WordPress van telepítve. A github mappa tartalmazza a Github összes WordPress pluginját. A wordpress mappa ugyanazokat a bővítményeket tartalmazza, amelyeket SVN-en húztunk ki a WordPress tárházból.

Az első lépés a WordPress Plugin Boilerplate vanília verziójának létrehozása a Githubon. Ezt követően ellenőriztem a github mappámban. Ezután létrehozunk egy hivatkozást a csomagtartó mappája között a WordPress telepítésem wp-content / plugins könyvtárában.

A Symlinks egy olyan fájlra vagy mappára való hivatkozás, amely a várakozásnak megfelelően felszabadul a céljához. Ennek végeredménye az, hogy ha a rendszer bármely pontjáról a plugin-t a WordPress könyvtárba kapcsolja, akkor az nagyon jól fog működni. Ez a következő előnyöket nyújtja:

  • A bővítményeket máshol is tárolhatja.
  • Egy mappát összekapcsolhat egy nagyobb tárolóból.
  • Ugyanazt a beépülő modult összekapcsolhatja több telepítéssel.

A hivatkozás létrehozása egyszerű a terminálon vagy a parancssorból a Windows rendszeren. Azt javaslom, hogy nyisson meg egyet, és keresse meg a WordPress telepítésének plugins könyvtárát. Ezután írja be a következő parancsot:

# OSX vagy Linux esetén
ln -s / abszolút / elérési út / a / github-ba / Saját plugin-neve / my-plugin-name / trunk my-plugin-name

# Windows esetén
mklink / j C: \ abszolút \ elérési út \ \ github \ My-plugin-name my plugin-name

Ez összeköttetést hoz létre az első útról a másodikra. Az első út a Github-tárházban található törzskönyvtár abszolút elérési útja. A második csak annak a mappának a neve, amelyhez csatolni szeretné, amikor már a WordPress telepítésének plugins könyvtárában van..

Ha kész, akkor látnia kell az új plugin megjelenését, akárcsak a fenti képen. Testre kell állítanunk a dolgokat, de most a plugin-t a Github tárházból futtatjuk, így a fejlesztés sok könnyebb.

átnevezése

Nagyon sok mappa és fájl található a csomagtartó-könyvtárban, kezdjük átnevezni őket! Mindenekelőtt azt javaslom, hogy nevezze el tárhelyét kötőjelekkel és nagybetűkkel, ehhez hasonlóan: Saját félelmetes-bővítmény. A fő mappának „félelmetes pluginnak” kell lennie. Azt javaslom, hogy használja ezt az egyezményt az egész pluginban.

A fájlok átnevezése az OSX rendszerben egyszerű. Nyissa meg az összes mappát, és válassza ki az összes fájlt, amelyben a karakterlánc plugin-neve található. Kattintson a jobb gombbal az összes 14 fájl átnevezésére és a tétel átnevezésére.

átnevezés

Kicsit nehezebb lesz a Windows rendszerben, nézd meg ezt HowToGeek cikk további információkért, vagy csak keressen egyenként.

Olyan kifejezések, mint "plugin-név" és más variációk az egész fájl tartalmára el vannak osztva. Te tudod használni Fenséges, Atom.io vagy más alkalmas szövegszerkesztők, amelyek több fájlban is helyettesíthetők. Itt található egy lista arról, mit kell cserélnie (ügyeljen arra, hogy kis- és nagybetűket érzékelő keresést cseréljen).

  • PLUGIN_NAME legyen my_awesome_plugin
  • PLUGIN_NAME legyen My_Awesome_Plugin
  • plugin-név a félelmetes pluginmá kell válnia

Ha kész, akkor feltétlenül töltse ki a fő fájl fejléc megjegyzését (my-félelmetes-plugin.php), hogy az igényeinek megfelelő legyen..

Tartalomjegyzék

Sokat tartalmaz a WordPress Plugin Boilerplate. Az ötlet az, hogy szigorú irányelveket állítson fel arra, ahová teheti a dolgokat. Van egy konkrét hely a horgok hozzáadásához, például egy szokásos hely a front-end funkciók hozzáadásához és így tovább. Vessen egy pillantást a keret fő részeire.

Vegye figyelembe, hogy az átnevezett fájlokra hivatkozom, például: a / class-my-awesome-plugin.php. Ha átnevezte a bővítményt valami másra, akkor ne feledje, hogy a fájlnév félelmetes bővítmény része más lesz az Ön számára.

Aktiválás, deaktiválás és eltávolítás

A beépülő modul aktiválásakor futtatni kívánt kódnak tartalmaznia kell a / my-félelmetes-plugin-name-activator.php fájlt. Ebben a fájlban található egy My_Awesome_Plugin_Activator nevû osztály, amelyben létezik az acti () metódus, amelyet használni kell.

Ne aggódjon, ha még nem hajlandó gyorsítani a tárgyakon, mert az induláshoz elegendő a tudás, hogy hol helyezze el a dolgokat.

A deaktiváláshoz futtatni kívánt kódot a / my-awesome-plugin-name-deactivator.php fájlba kell helyezni. A My_Awesome_Plugin_Deactivator alkalmazásban az acti () metódust kell használni..

Gondolod, hogy ez egy kicsit túl bonyolult? Nem hibáztatlak téged! Amikor elkezdi használni az objektumorientált fogalmakat, látni fogja ennek előnyeit az eljáráskódhoz képest. Ha semmi más, akkor ez egy nagyon nyilvánvaló hely a kód elhelyezéséhez, amely önmagában hatalmas segítség.

Az eltávolításhoz az ajánlott módszer az uninstall.php használata, amelyet a WordPress Plugin Boilerplate tesz. A kódját a fájl legelején kell elhelyezni.

Horgok hozzáadása

A horgokat a WordPress Plugin Boilerplate bámulatosan kezeli, de ez kezdetben kissé nehézkesnek tűnhet. Az összes horgot a / class-my-awesome-plugin.php fájlba kell helyezni. Pontosabban, a My_Awesome_Plugin osztályon belül, két módszer szerint:

  • define_public_hooks (), ha hozzáad egy kampót, amelyet a kezelőfelületen használnak
  • define_admin_hooks (), ha hozzáadunk egy horgot, amelyet a háttérhez használnak

Ahelyett, hogy az add_action () vagy add_filter () szokásos módon használja, kissé másképp kell tennie a dolgokat. Így módosíthatja például a bejegyzés tartalmát.

$ this->rakodó->add_action (‘the_content’, $ plugin_public, ‘modify_post_content’);

Az első paraméter a horog neve, a második a nyilvános vagy admin objektumra való hivatkozás. Nyilvános hook esetén ennek $ plugin_public, adminisztrátori hook esetén $ plugin_admin kell lennie. A harmadik paraméter a kampós funkció.

Noha ferdebbnek tűnik, a horgok hozzáadását teljesen szabványosítja, a folyamat két különálló csoportjára osztva.

Nyilvános és rendszergazda tartalom

A WordPress beépülő kazánlapja a horgokat admin / nyilvános csoportokba bontja, de ez még nem minden. Az összes kódot felosztja ugyanúgy, mert arra kéri, hogy írjon nyilvános oldalú kódot a nyilvános mappába, és adminisztrátori kódot az admin mappába.

Mindkét mappa tartalmaz css, js és partial mappákat. Helyezze a használt CSS / JS eszközöket ezekbe a mappákba, és írjon sablonokat és más HTML újrafelhasználható biteket a partíciók mappába. Rendben, ha új fájlokat hozunk létre a partíciók mappába, valójában erre szolgál!

A csatolt funkciókat ezekben a mappákban is meg kell írni, az osztályon belül a megfelelő könyvtárakban. Amikor a modify_post_content függvényt a fenti_tartalomra kapcsoltuk, megmondtuk a WordPress Plugin Boilerplate-nek, hogy hol kell azt is megkeresni. Mivel ezt hozzáadtuk a nyilvánosság felé, a WordPress Plugin Boilerplate elvárja, hogy a My_Awesome_Plugin_Public osztályban meghatározzák, amely a nyilvános mappában található. Egyszerűen hozza létre ezt a funkciót az osztályon belül, és írjon meg minden mást, mint általában.

Források és függőségek

Ha külső forrásokat szeretne használni, például a TGM plugin aktiválása, ezt hozzá kell adnia az include mappához. A TGM egy osztály-tgm-plugin-activation.php nevű fájl, amelyet be kell illeszteni az class-my-awesome-plugin.php fájlba, a load_dependencies () metóduson belül:

need_once plugin_dir_path (dirname (__FILE__)). ‘Magában foglalja a / osztály-TGM-plugin-activation.php’;

Áttekintés

Összezavarja az összes fájlnév és funkció? Ne aggódjon, elég gyorsan lefagy. Valójában általában csak három fájlt módosít:

  • a / class-my-félelmetes-plugin.php tartalmazza, ahol hozzáadja az összes horgot és függőséget.
  • public / class-my-félelmetes-plugin-public.php, ahol hozzáadja az összes nyilvános funkciókat.
  • Az admin / class-my-félelmetes plugin-admin.php az az összes adminisztrációs funkció.

Először a WordPress Plugin Boilerplate használata nehézségnek tűnhet, de végül megtérül. Egy évvel később visszatérsz, és tudod, hogy hol van minden, a plugin fejlesztése szabványos lesz a termékek között, és más fejlesztők is kitalálhatják, mi folyik itt.

Végül, ne felejtsük el, hogy az egyszerű widget biztosító pluginnek nem kell ilyen keret. Noha a WordPress Plugin Boilerplate használata nem lassítja le a plugin működését, eldugulja a nézetet, ha csupán néhány egyszerű kódsorra van szüksége.!

Jeffrey Wilson Administrator
Sorry! The Author has not filled his profile.
follow me
    Это интересно
    Adblock
    detector