A legjobb módja a beépülő modulok engedélyezésének egy PHP-alkalmazáshoz. PHP kód beillesztése a WordPressbe widgeteken keresztül Criminal plugin php

A beépülő modulok egy módot kínálnak az alkalmazások funkcionalitásának kiterjesztésére anélkül, hogy megváltoztatnák a forráskódját.

A beépülő modul által megvalósított funkciók az alkalmazásfrissítések telepítése után is működnek, amikor a fájlokat felülírják. A beépülő modul forráskódja független fájlokba van fordítva, amelyek csak az alkalmazáshoz kapcsolódnak.

Lokalizáció

  • A beépülő modulok lokalizálása az alkalmazáshonosításhoz (dokumentációhoz) teljesen hasonló módon valósul meg. A locale mappában helyezze el a *.po és *.mo fordítási fájlokat, és adja meg a kulcsokat a kódban az alábbiak szerint:
  • _wp("string") a PHP-ben (a _w() metódus helyett, amely csak alkalmazáshonosítással működik, a _wp() metódust érdemes használni, amely betölti a bővítmény lokalizációját),

[`string`] a Smarty sablonokban (nincs különbség az alkalmazás lokalizációjától).

A beépülő modul neve és leírása (név és leírás a konfigurációs fájlban) az alapértelmezett beépülő lokalizációval lett lefordítva, így nincs szükség a "name" => _wp("PLUGIN NAME") megadására - csak adja meg a "name" = > "PLUGIN NAME" .

Lokalizáció használata statikus módszerekben

Abban az esetben, ha a plugin osztályok nyilvános statikus metódusait külső környezetben hívjuk meg, például a témakódban, a beépülő modulok lokalizációja nem kapcsolódik automatikusan, és a _wp() függvény nem ad vissza új sort a várt módon. A beépülő modulok lokalizációjának használatához az ilyen módszerekben a _wp() függvény összes hívását egy speciális konstrukcióban kell elhelyezni, amely az alábbi példában félkövérrel van szedve:

Az appMyPlugin osztály kiterjeszti a waPlugin-t ( nyilvános statikus függvény displayData() ( //mindkét sorban adja meg az alkalmazás és a beépülő modul azonosítóját waLocale::loadByDomain(array("app_id", "plugin_id")); waSystem::pushActivePlugin("plugin_id ", " app_id"); $eredmény = _wp("..."); waSystem::popActivePlugin(); return $eredmény; ) )

Adatbázis Ha a beépülő modul saját táblákat használ az adatbázisban, akkor a táblaneveknek egy töredékkel kell kezdődniük, például __ , például: shop_ebay_

táblanév.

A plugin csatlakoztatása

Ahhoz, hogy az írott beépülő modul működjön, csatlakoztatnia kell az alkalmazásrendszer wa-config/apps/APP_ID/plugins.php konfigurációs fájljához, és hozzá kell adnia a következő sort:

Példa erre a fájlra a Blog alkalmazáshoz (wa-config/apps/blog/plugins.php):

"! Ez azt jelenti, hogy a rövid kódba beillesztett futtatható PHP-kód nem így néz ki, hanem így: "Echo date ("Y"); " . És végül, amikor beilleszti a rövid kódba, ez így fog kinézni:

Echo dátum ("Y");

  • Újabb figyelmeztetés kezdő webmestereknek!

A PHP-kód ilyen módon történő futtatása a WordPress-bejegyzésekben sebezhetővé teszi a motort mindenféle hackerrel szemben – olyan crackerekkel szemben, akik saját önző céljaikra használhatják fel. Ehhez a functions.php fájlba beszúrt kódban az "exec" értéket a sajátodra kell módosítanod, amit csak te ismersz! És ennek megfelelően használja ugyanazt az értéket a rövid kódokban a bejegyzésekbe való beszúráshoz.

Ezzel a művelettel elkerülhető, hogy valaki kihasználja a funkció használatából eredő potenciális „lyukat” – PHP kód beszúrása a Wordpressbe.

Ez a php kód beillesztéséről szól a WordPressbe plugin használata nélkül.

Most nézzük meg, hogyan lehet php kódot is beszúrni a WordPressbe, de plugin segítségével...

Hogyan ágyazhatunk be futtatható PHP kódot a WordPressbe az Exec-PHP bővítménnyel?

Számos plugin létezik a PHP kód beillesztésére a WordPressbe végrehajtás céljából. De nem mindegyik biztonságos, hiszen telepítésük és használatukkor olyan sérülékenységek jelennek meg a motorban, amelyeket a gátlástalan hackerek kihasználhatnak.

Most elmondom a legbiztonságosabb és legfunkcionálisabb beépülő modult a PHP kód futtatásához a WordPress-ben - Exec-PHP. Először is le kell töltenie a hivatalos WordPress webhelyről, vagy egyszerűen telepítenie kell a webhely adminisztrációs paneljéről. Remélem tudod hogyan kell ezt csinálni?! Ha nem tudod, akkor nézd meg. Van egy videoklip is, amiben mindent a saját szemeddel láthatsz. Bár egy másik bővítmény telepítéséről beszélünk, az elv ugyanaz.

A bővítmény telepítése és aktiválása után a következő jelenik meg az adminisztrátori főmenüben:

Kattintson rá, és a következő helyre kerül:

Válassza ezt a PHP-kód widgetekben való végrehajtásához/figyelmen kívül hagyásához, és kész.

Ezután ahhoz, hogy a WordPress-be futtatható PHP kódot tudjon beilleszteni bejegyzésekben és oldalakon, be kell jelölnie a profiljában található négyzetet - :

Minden. Mostantól bármilyen PHP-kódot hozzáadhat a WordPress-ben oldalaihoz és bejegyzéseihez, és az végrehajtódik!

Köszönöm a figyelmet! Sok sikert mindenkinek! Viszontlátásra!

Bizonyára gyakran találkozott azzal, hogy új funkciók hozzáadásához egy kódrészletet kell hozzáadnia a WordPress webhelyéhez. Nem a Google Analytics szkriptekről beszélek, amelyeket beszúr a téma fejlécébe. Nem. Azokról a kis kódrészletekről beszélek, amelyeket az internet fórumain talált, és azonnal futott, hogy hozzáadja a functions.php fájlhoz.

Legyünk őszinték, ezt már legalább egyszer megtetted, igaz? És ez érthető is, mert a fórumon írták – add hozzá ezt a kódot a WordPress témád functions.php-jához.

Az igazság az, hogy nem mindig jó ötlet az interneten talált összes kód hozzáadása a functions.php-hez. Biztonságosabb megoldás az, ha ezzel a kóddal saját egyéni mini beépülő modult hoz létre.

Ebben az oktatóanyagban elmondjuk, hogy milyen esetekben adhat hozzá kódot a functions.php-hez, és milyen esetekben érdemes külön bővítményt használni. Azt is bemutatjuk, hogyan hozhat létre saját beépülő modult, és hogyan adhat hozzá saját kódot.

Mi az a functions.php

Ha valaha is átnézte a WordPress webhely fájljait, előfordulhat, hogy számos functions.php fájlra bukkant. A functions.php fájl, amelyről ebben az oktatóanyagban beszélünk, a következő mappában található: wp-contentthemesyourthemefunctions.php.

Nyilvánvaló, hogy ez ugyanaz a fájl, amely az aktuálisan aktív téma összes funkcióját és beállítását tárolja. Ügyeljen az „aktív” szóra, mert ez lesz a lecke fő üzenete.

Miért rossz ötlet mindig a functions.php használata

Félreértés ne essék, a functions.php használata kis kódrészletekre pár sorban teljesen normális helyzet. Azt mondjuk, hogy nem jó ötlet a functions.php-t az összes hozzáadott kód tárhelyeként használni. Ez nem minden helyzetre egy univerzális megoldás.

Ok #1.

Ha frissítés érkezik a témához, akkor mindent elveszít, amit a functions.php fájlba írt. Tudom, mire gondoltál – de van egy ilyen helyzetekre?

Természetesen van. De sokan vannak, akiknek fogalmuk sincs, mi az a gyerektéma. Vagy vannak olyanok, akik segítséget kértek egy kódrészlet hozzáadásához a témájukhoz.

Ezért van ez az ok ezen a listán. Ha gyermektéma használata nélkül ad hozzá kódot a functions.php-hez, ez az első piros zászló.

2. ok.

Még akkor is, ha megfelelően konfigurált és használ egy gyermektémát. Mi történik, ha másik témára szeretne váltani? Remélem, megjegyzést fűz minden változtatáshoz, amelyet a functions.php fájlban hajt végre, mert enélkül egy másik témára való váltás rendkívül fájdalmas lesz. Szerintem érted az ötletet.

Ok #3.

Ha olyan kódot adtál hozzá a functions.php-hez, amely hirtelen teljesen összetöri a webhelyedet, és üres, fehér képernyő marad, akkor szükséged lesz egy FTP-kliensre a hibás functions.php letöltéséhez, szerkesztéséhez, és töltse fel vissza a webhelyére. Az öröm ilyen.

Mikor használjuk a functions.php-t

A functions.php helyes használata az aktuálisan aktív gyermektémához egy érvényes lehetőség. De emlékszel, hogyan összpontosítottam az „aktív” szóra?

Ha olyan kódrészleteket ad hozzá, amelyeknek csak akkor van értelme, ha az adott témával dolgozunk, akkor nyugodtan használhatja a functions.php-t (gyermektémában). Íme néhány példa, ahol ez megfelelő lenne:

  • Egy másik stílusfájl (.css) hozzáadása a témához
  • A bejegyzés részletének hosszának módosítása a webhely jobb megjelenése érdekében
  • Egyéni betűtípusok hozzáadása az aktuális témához
  • Lokalizációs fájl hozzáadása az aktuális téma lefordításához

Más szóval, amikor bármit hozzáad vagy módosít az adott aktuális témával kapcsolatban, nyugodtan használhatja a functions.php-t.

Mikor jobb a functions nélkül.php

A functions.php használata olyan globális dolgok és funkciók hozzáadására, amelyekre elméletileg szükség lehet egy másik témához, rossz ötlet.

Íme néhány példa, mikor érdemes a functions.php nélkül megtenni:

  • Hozzon létre egyéni widgeteket, amelyeket gyakran fog használni
  • Egyéni rövid kódok létrehozása
  • Olyan kód hozzáadása, amely nem függ a témától (Google Analytics kód stb.)

Ilyen esetekben jobb, ha elmenti ezt a kódot, függetlenül a témától. És ezt egyéni bővítményekkel is megteheti.

Most azon gondolkozik, hogy egy beépülő modul létrehozásán gondolkodik, amikor szerkesztheti a functions.php fájlt? Ez túl nehéz! Hidd el, ez nem igaz. Ez nagyon egyszerűen és gyorsan megtörténik.

Egyéni bővítmény beállítása a functions.php helyett

A kód tárolásához saját egyéni bővítmény létrehozásához a következőkre lesz szüksége:

  • Hozzon létre egy szöveges fájlt a kódjával, és mentse el .php fájlként
  • Csomagolja be a kapott .php fájlt egy .zip archívumba
  • Telepítse ezt az archívumot normál WordPress-bővítményként a Bővítmények → Új hozzáadása menüpontban
  • Ennyi, csak 3 lépés.

    1. lépés: Hozzon létre egy .php fájlt a kódjával

    Nyissa meg a Jegyzettömböt a számítógépén, és illessze be a következő szöveget:

    Természetesen használhatja a saját nevét a beépülő modulhoz a Plugin Name sorban:

    Mentse el a fájlt, és adjon neki egyedi nevet, hogy a WordPress ne keverje össze a bővítményt a már telepítettekkel. Például: wpcafe-custom-functions.php.

    Igen, ne felejtse el mentéskor kiválasztani az „Összes fájl” fájltípust, és hozzáadni a .php kiterjesztést:

    2. lépés: Hozzon létre egy .zip archívumot

    Szerintem itt nincs szükség magyarázatra. Csak hozzon létre egy .zip archívumot fájljával bármely kényelmes archiváló segítségével.

    3. lépés: Telepítse normál beépülő modulként

    A legegyszerűbb rész. Csak lépjen a WordPress adminisztrátorához a Plugins → Add New menüpontban, és töltse fel archívumát normál beépülő modulként.

    Miután aktiválta, látni fogja az új beépülő modult az összes többi telepített bővítmény listájában:

    Hogyan adhatunk hozzá saját kódot

    Saját kódrészlet hozzáadásához egyszerűen illessze be azt a létrehozott .php fájlba. Vagy mindig készíthet másik külön bővítményt két különböző funkcióhoz.

    Például így nézne ki a .php fájl, ha szeretne létrehozni egy "Hello World!"

    Ezek a megjegyzések semmilyen módon nem befolyásolják a kód teljesítményét vagy a beépülő modul végrehajtási sebességét. De megkönnyítik a navigálást, és emlékeznek rá, hogy az egyes hozzáadott funkciók mire képesek.

    Csak írja be megjegyzését perjel és csillag szintaxisba: /* Az Ön megjegyzése */

    A kód módosítása után újra feltöltheti a .php fájlt FTP-n keresztül, vagy egyszerűen létrehozhat egy új .zip archívumot, és feltöltheti új beépülő modulként, és törölheti a régit.

    Egyéb módok a functions.php szerkesztésének elkerülésére

    Általánosságban elmondható, hogy ha elég magabiztos a képességeiben, és tudja, hogyan kell kódot hozzáadni a functions.php-hez, akkor nem lehetnek nehézségei az egyéni bővítményekkel. Nincs itt semmi bonyolult.

    De tökéletesen megértjük, ha nem akarja mindezt kézzel bütykölni. Végül is ez a WordPress. Ezért hasznosnak találhatja az ingyenes Code Snippets beépülő modul használatát, amely lehetővé teszi további kódok egyszerű hozzáadását a webhelyhez:

    Ezzel a bővítménnyel különböző kódrészleteket adhat hozzá, címet, leírást adhat nekik, valamint szelektíven aktiválhatja és letilthatja az egyik vagy másik kódrészletet.

    Egy másik nagyszerű funkció, hogy importálhatja/exportálhatja kódrészleteit a webhelyek között.

    Eredmények

    Ez apró részletnek tűnhet, de a kiegészítő kód helyes elhelyezése lehetővé teszi, hogy a jövőben probléma nélkül váltson a többi téma között. Egyenként is engedélyezheti vagy letilthatja ezt vagy azt a funkciót, ha minden további funkciót külön-külön beépülő modulok között oszt fel.

    Tehát ez a módszer valóban figyelmet érdemel.

    Szinte mindenki, aki blogot vezet a WordPress-en és maga is karbantartja, tud egy mágikus functions.php fájl létezéséről. Gyakran teljesen más célokra használják, ami jelentős problémákhoz vezethet. Nézzük meg együtt ezt a kérdést részletesebben.

    Biztosíthatom Önt, hogy a cikk elolvasása után megváltozik a hozzáállása a bővítményekhez, és nem ad hozzá újabb kódrészletet a functions.php-hez.

    Plugins and functions.php

    Sok WordPress webhelytulajdonos szilárdan meg van győződve arról, hogy a bővítmények minden bizonnyal betöltik és lelassítják a blogot. És ha csak hozzáadja a kódot a functions.php-hez, az semmilyen módon nem befolyásolja a terhelést. Sajnos ez nem teljesen igaz...

    Az tény, hogy a terhelést nem kifejezetten a plugin okozza, hanem annak hibásan megírt kódja, ami a következő kézikönyvből könnyen a functions.php-be kerülhet.

    Nézzük meg a főbb különbségeket a plugin és a functions.php között.

    Az alapvető különbség a beépülő modul és a functions.php fájl között a célja és a végrehajtási sorrend.

    Ugyancsak alaptalan azt hinni, hogy a functions.php-ben található kód gyorsabban fog lefutni, mint a beépülő modulban. Ugyanaz a kód a beépülő modulban és a functions.php-ben azonos sebességgel és terheléssel fut le.

    Nagyon gyakran a nagy terheléssel kapcsolatos problémák a bővítmények további funkciói miatt merülnek fel, és a webhely betöltési sebessége szenved a saját stílusukat, szkripteket és egyéb tartalmakat összekötő szkriptektől. Ezért a jövőbeni problémák elkerülése érdekében fontos odafigyelni a bővítmény kiválasztására.

    Ha Ön egy közönséges blogger, és távol áll a webfejlesztéstől, akkor a bővítmény kiválasztásakor ügyeljen a WordPress tárházában és a szerzők vagy webfejlesztők blogjaiban található értékelésekre.

    Ha még mindig kétségei vannak, készítsen egy csésze kávét, és feltétlenül olvassa el Konsztantyin Kovsenin cikkét a WP Magazine-ban - „A teljes igazság a functions.php-ről”. Az első rész egyszerűen és érthetően elmagyarázza, miért nem szabad hinni a functions.php-vel kapcsolatos mítoszokban.

    Beépülő modul a functions.php fájl alternatívájaként

    A sablonfájlokhoz hozzáadott összes kiegészítés (szkriptek, számlálók, függvények) elveszhet, amikor módosítja az aktív témát vagy frissíti azt. Ennek elkerülése és a káosz elkerülése érdekében a functions.php-ben javaslom, hogy használja a saját személyes bővítményét.

    Készítsünk saját bővítményt – a functions.php fájl alternatíváját. Ne ijedj meg, pontosan úgy fog kinézni, mint a kedvenc funkcióid.php :) Mindössze annyit kell tennie, hogy hozzáad egy üres beépülő modult a webhelyéhez. Utána pedig bele lehet szúrni a szükséges kódot, ahogy a functions.php-nél szoktad.

    Először is létre kell hoznunk a számítógépünkön egy functionsphp.php nevű fájlt, és hozzá kell adni a következő kódot: