Pagina principala » WordPress » Ghidul începătorului pentru WordPress Plugin Development

    Ghidul începătorului pentru WordPress Plugin Development

    WordPress CMS a schimbat fața Internetului nostru și a permis o creștere a ideilor noi pentru a prospera și mișcarea sursă deschisă deține o prezență puternică înrădăcinată în dezvoltarea de software și web. WordPress este o platformă de blogging care are capacitatea de a lansa în multe alte scripturi, cum ar fi forumuri web, tabele de locuri de muncă și chiar și o pagină web clasică Content Management System.

    Vom trece peste câteva moduri de a începe dezvoltarea de plug-in-uri pentru WordPress. Pașii sunt destul de simpli și nu necesită o mare dedicare pentru a studia. Cunoștințele cognitive ale PHP ar fi utile chiar și cu o înțelegere de bază a structurii de fișiere WordPress și a panoului Administrație.

    În acest tutorial scurt vom trece peste pașii de bază necesari pentru a crea un plug-in simplu WordPress. Funcționalitatea va fi utilizată pentru a crea fragmente dinamice bazate pe numărul trecut în apelul nostru de funcții. Va trebui să încărcați fișierul plug-in și să îl activați din panoul Admin, apoi să continuați apelând funcția noastră din paginile pe care doriți să apară fragmentul. Legăturile la codul sursă completat completat sunt adăugate mai târziu în acest articol :)

    De ce se dezvolta pentru WordPress?

    Pluginurile sunt o modalitate excelentă de a îmbunătăți funcționalitatea blogului dvs. prin adăugarea de funcții suplimentare. Acestea pot fi plasate oriunde în interiorul șablonului dvs. prin cârlige de funcții. Cu timpul extensibilitatea sistemului WordPress plug-in a permis o creștere extraordinară și sute de piese de software furnizate de dezvoltatori.

    WordPress oferă în mod special astfel de funcții avansate în CMS că plug-in-urile unice sunt puține și departe între ele. În calitate de dezvoltator dețineți control complet asupra specificațiilor din backend ale blogului dvs. web. Închirierea unui dezvoltator PHP pentru a crea un plugin de sistem ar costa mult mai mult decât vă puteți imagina și API este suficient de ușor să lucrați și să vă învățați.

    Ca un argument secundar, dezvoltarea peste WordPress este o practică excelentă pentru a vă regla în alte zone. Construirea pluginurilor mai mici și a widget-urilor bara laterală în WordPress vă va ajuta să dezvoltați o înțelegere a modului în care funcționează sistemul backend. Acest lucru nu este limitat doar la WordPress, deoarece veți obține o înțelegere mai profundă a marea majoritate a Content Systems.

    1. Structura folderului WP

    O introducere în structura folderului WordPress va afișa directoarele principale ale aplicațiilor. În interiorul conținutului wp veți găsi a Plugin-uri director. Aici este locul în care vor fi găzduite toate pluginurile dvs. individuale, fie fișiere unice, fie sub-directoare numite în mod corespunzător.

    Pentru plug-in-uri mai mici, care necesită doar un singur fișier .php, aveți opțiunea de a plasa acest lucru direct în directorul plug-ins / director. Cu toate acestea, atunci când începeți să dezvoltați aplicații mai complicate, este mult mai util să creați un sub-director denumit după plug-in-ul dvs. În interiorul dvs. puteți găzdui JavaScript, CSS și HTML, împreună cu funcțiile dvs. PHP.

    A readme.txt fișierul poate fi, de asemenea, util dacă intenționați să oferiți pluginul pentru descărcare. Acest fișier trebuie să includă numele dvs. și ceea ce face pluginul. În calitate de autor, puteți lua în considerare și detalii despre fiecare revizuire și care sunt actualizările.

    2. Pornirea fișierului dvs. PHP

    Când creați un plugin nou, va trebui să începeți cu un simplu fișier PHP. Acest lucru poate fi numit orice, dar ar trebui să reflecte, în general, numele oficial al plug-in-ului dvs. De exemplu, am creat codul de bază și am denumit fișierul hongkiat-excerpt.phps.

    Primele linii ale plug-in-ului trebuie sa fi informații despre comentarii pentru motorul de parsing. Acest lucru este extrem de important, deoarece WordPress nu va putea să vă proceseze fișierul fără. Mai jos este un exemplu de cod snippit pe care îl puteți copia și mucegăi spre dvs..

     

    Numele de plugin este ceea ce se va afișa în panoul dvs. de administrare pentru backend când mergeți pentru activare. La fel cu URI-ul care va fi plasat în panoul de detalii din interiorul panoului plug-in-uri. Deși nu este necesar să includeți o versiune sau o descriere, plugin-ul dvs. este mult mai profesionist.

    3. Convenții de numire WordPress și cele mai bune practici

    Există câteva modalități de structurare a pluginului. De multe ori dezvoltatorii PHP vor crea un întreg sistem de clasă pentru a evita coliziunile cu funcții și nume de variabile. Dacă nu sunteți familiarizați cu funcționalitatea avansată OOP a PHP, atunci este mai bine să vă scrieți codul în funcții de eșantionare.

    Deci, pentru codul nostru de exemplu, vom scrie o singură funcție care să găzduiască datele noastre. De asemenea, trebuie să definim câteva variabile care sunt cheia implementării în fișierele noastre de șabloane. Mai jos este un exemplu de cod preluat din fișierul nostru plugin cu logica de bază eliminată.

    Când scrieți codul eșantion, este mai bine să urmați regulamentele și ghidurile create de WordPress. Deoarece există atât de multe funcții interne deja definite, puteți evita duplicatele prin prefixarea unei etichete pentru toate variabilele și numele funcțiilor.

     

    În exemplele de mai sus am prefixat toate numele de setări cu Hongkiat. Acest lucru poate fi înlocuit cu orice cuvânt cheie ales de obicei legat de numele pluginului. Codul de mai sus este just setările de probă și nu ar trebui să se refere la plug-in-ul nostru final. Acest lucru este doar pentru a vă oferi o scurtă prezentare a modului în care numele dvs. de variabile și apelurile de funcții ar trebui să fie scrise.

    4. Scufundări în filtre și acțiuni

    Există un alt concept demn de menționat înainte de a intra în codul nostru brut. acţiuni și filtre sunt două concepte complet diferite care se raportează adânc în modul în care manipulează datele pluginului.

    Acești doi biți de cod provin standard în API-ul WordPress. Filtrele și acțiunile permit dezvoltatorilor plug-in să actualizeze fragmente de cod în întregul panou de administrare WordPress care se referă la noul plug-in. Aceasta înseamnă că ați putea adăuga o filă nouă în bara laterală sau în link-urile de setări suplimentare pentru opțiunile dvs. Plug-in.

    Înțelegerea add_filter ()

    A filtru este folosit pe un pic de text sau date care sunt transmise în WordPress. Cu filtre pe care le puteți face literalmente filtrați conținutul prin propriile dvs. funcții personalizate scrise pentru a schimba datele în orice mod.

    De exemplu, puteți crea un filtru pentru a vă schimba $ the_content care este o variabilă setată de WordPress conținând întregul conținut post al unui articol WordPress. Pentru plug-in-ul nostru vom lua $ the_content și scurtarea lungimii caracterelor într-un fragment.

    Filtrele vin la îndemână atunci când scrieți pluginuri pentru a personaliza aspectul blogului dvs. Acestea sunt deosebit de populare atunci când se scriu widget-uri de bara laterală sau funcții mai mici pentru a schimba modul în care trebuie afișată o postare. Mai jos este o mostră de cod care arată modul de aplicare a unui filtru.

    add_filter ('wp_title', 'hongkiat_func');

    Aici adăugăm un filtru în titlul paginii WordPress. Rețineți că acest cod nu se referă la pluginul nostru oficial și este folosit doar ca exemplu aici.

    add_filter funcția este nativă pentru WordPress și folosită pentru a adăuga un filtru nou la o variabilă găsită în conținutul paginii. În linia de mai sus ne îndreptăm $ wp_title care conține titlul paginii noastre curente. Apoi trecem această variabilă într-o funcție falsă intitulată hongkiat_func () care ar putea apoi să manipuleze și să returneze o nouă etichetă de titlu în orice scop.

    Înțelegerea add_action ()

    Acțiunile sunt similare cu filtrele prin faptul că nu funcționează pe biți de date, ci vizează în prealabil zone predefinite în șabloanele și panoul de administrare. Ca exemplu, puteți aplica o acțiune ori de câte ori actualizați sau editați conținutul unei pagini. WordPress oferă o listă cuprinzătoare de acțiuni în documentația API. Mai jos este o mică listă de acțiuni de exemplu pentru a vă familiariza cu unele dintre zonele țintă predefinite.

    • publish_post - când se publică o postare sau când se schimbă starea “publicat”
    • save_post - numit atunci când un post / pagină este creat de la început sau actualizat
    • wp_head - numit atunci când șablonul este încărcat și rulează wp_head () funcţie
    • loop_end - numit imediat după ce postul final a fost procesat prin buclă WordPress
    • trackback_post - numit ori de câte ori un nou trackback este adăugat într-un post

    Din nou, putem vedea cât de simplu acest bit de cod se reduce la. Dacă înțelegeți diferența dintre acțiuni și filtre, veți fi mult mai aproape de a construi pluginuri WordPress compacte și de lucru. Mai jos este o altă linie de cod care inițializează o funcție de acțiune pe save_post cârlig. Pentru a clarifica din nou acest lucru nu se referă la pluginul nostru actual în curs de dezvoltare și este folosit doar ca o bucată de exemplu de cod pentru a înțelege ADD_ACTION () funcţie.

    add_action ('save_post', 'notificare');

    Deci, aici vedem o configurație similară cu cea precedentă add_filter (). Avem nevoie de 2 variabile, primul care deține numele cârligului nostru pe care-l vizăm. În acest caz save_post ceea ce înseamnă că ori de câte ori un post nou este salvat vom numi funcția definită în a doua poziție (notificare ()). În mod evident, actualizați notificarea pentru a fi orice nume de funcție pe care doriți să îl rulați, dar acest lucru nu este necesar pentru plug-in-ul nostru curent.

    Finalizând logica noastră Plugin

    Finalizându-ne pe calea noastră, vom adăuga funcția finală direct în fișierul nostru plug-in. Documentația API este foarte specifică și oferă o resursă excelentă dezvoltatorilor care pot deține întrebări avansate. Materialul poate părea dificil dacă nu sunteți familiarizat cu PHP, dar vă ocupați de concepte și lucrurile vor începe să curgă în mod natural!

    Funcția de mai jos trebuie adăugată direct după comentariul antetului pluginului. Alternativ, acest lucru ar putea fi, de asemenea, plasat în interiorul temei functions.php fişier. Codul este utilizat pentru a crea conținut postat dinamic pe baza unui interval limitat de caractere.

    Deci, pentru exemplul nostru, putem limita fragmente de povesti de numai 55 de caractere cu hk_trim_content () funcţie. S-ar putea să numiți cu ușurință acest bit de cod dintr-un widget lateral al buclei sau unul din fișierele tematice pe care să le înlocuiți $ the_content.

    = limita $) array_pop ($ content); $ content = implode ("", $ conținut) "...";  altceva $ content = implode ("", $ content);  $ content = preg_replace ('/\[./\]/', ', $ content); $ content = apply_filters 

    Nu este de așteptat să înțelegeți pe deplin toate variabilele sau funcțiile interne utilizate aici. Obțineți o înțelegere generală a modului în care ar trebui să fie scrise funcțiile dvs. și ce ar arăta un exemplu de exemplu este un început foarte bun.

    De asemenea, ați putea observa că folosim un apel apply_filters care este o altă funcție WordPress specifică. Acesta este un alt aspect pe care nu trebuie să-l înțelegi pe deplin, dar el nu ajută la programarea viitoare pe WP. Consultați pagina de referință apply_filters pentru mai multe detalii și întrebări frecvente despre subiect.

    Funcția de bază de mai sus este numită hk_trim_content (). Acest lucru necesită doar un parametru numit limita $. Acest lucru ar putea fi scurtat la $ lim care ar trebui să stocheze un număr întreg care să precizeze câte caractere să-ți limitezi extrasul. Conținutul este utilizat în pagini complete de post și în pagini statice (despre noi, contactați).

    Prin urmare, pentru a numi această funcție, ar trebui să adăugăm parametrul în fișierele șablonului nostru. Acest lucru ar fi plasat undeva în posesia ta index.php sau loop.php (de) fișiere și va cere să instalați mai întâi pluginul. Exemplul de mai jos:

    Instalarea și rularea pluginului

    Am creat un exemplu de fișier pentru pluginul de demo dacă doriți să săriți codarea greu. Pur și simplu descărcați acest fișier (redenumiți-l în .php) sau copiați / inserați codul într-un nou document PHP și încărcați-l la dvs. / Wp-content / plugins director.

    După finalizare, veți dori să accesați panoul de administrare WordPress și să căutați actualul set de plug-in-uri pentru demo-ul instalat. Odată ce activați nimic nu se va întâmpla nimic nou, decât atunci când adăugăm manual funcția noastră de apel. Pentru aceasta, pur și simplu navigați Aspect -> Editor și căutați single.php.

    Acest fișier conține toate șabloanele HTML / CSS pentru pagina de post articol de bază. Derulați în jos până când găsiți continutul() și înlocuiți-o cu exemplul de mai sus. Acest lucru va limita toate paginile dvs. de articol la 55 de caractere, indiferent de ce vizualizare este folosit. De asemenea, puteți adăuga în această funcție pagini similare din directorul de șabloane, cum ar fi search.php sau archive.php.

    Concluzie

    Acestea sunt câteva dintre elementele de bază pentru a începe să lucrați în cadrul dezvoltării WordPress. Sistemul de pluginuri este vast și conține o mulțime de funcționalități interne. Dacă aveți deja o idee pentru un plug-in, încercați-l într-o instalare locală de WordPress pentru a practica aceste subiecte.

    Dacă sunteți în continuare confuz de o mare parte din informații, puteți consulta documentația WordPress și căutați răspunsul dvs. acolo. Comunitatea de dezvoltare este plină de utilizatori utile, iar forumurile dețin arhive cu întrebări din anii înapoi.