Plugin PHP inofensiv. Inserarea codului PHP într-o pagină
Aproape toți cei care conduc un blog pe WordPress și îl întrețin ei înșiși știu despre existența unui fișier magic functions.php. Este adesea folosit complet în alte scopuri, ceea ce poate duce la probleme semnificative. Să privim împreună această problemă mai detaliat.
Vă asigur că, după ce ați citit acest articol, vă veți schimba atitudinea față de pluginuri și veți înceta să adăugați un alt fragment de cod pe functions.php.
Pluginuri și funcții.phpMulți proprietari de site-uri WordPress sunt ferm convinși că pluginurile cu siguranță vor încărca și încetini blogul. Și dacă doar adăugați codul la functions.php, acest lucru nu va afecta în niciun fel încărcarea. Din păcate, acest lucru nu este în întregime adevărat...
Cert este că încărcarea este cauzată nu în mod specific de plugin, ci de codul său scris incorect, care poate ajunge cu ușurință în functions.php din următorul manual.
Să ne uităm la principalele diferențe dintre plugin și functions.php.
Diferența fundamentală dintre un plugin și fișierul functions.php este scopul și ordinea de execuție.
De asemenea, este nefondat să credem că codul din functions.php se va executa mai repede decât în plugin. Același cod în plugin și în functions.php va fi executat cu aceeași viteză și încărcare.
Foarte des probleme cu încărcătură mare apar din cauza funcționalității suplimentare a pluginurilor, iar viteza de încărcare a site-ului suferă din cauza scripturilor care conectează propriile stiluri, scripturi și alt conținut. Prin urmare, este important să acordați atenție alegerii pluginului pentru a evita problemele pe viitor.
Dacă sunteți un blogger obișnuit și sunteți departe de dezvoltarea web, atunci când alegeți un plugin, asigurați-vă că acordați atenție recenziilor din depozitul WordPress și de pe blogurile autorilor sau dezvoltatorilor web.
Dacă mai aveți îndoieli, faceți o ceașcă de cafea și asigurați-vă că citiți articolul lui Konstantin Kovshenin pe WP Magazine - „Întregul adevăr despre functions.php”. Prima parte explică simplu și clar de ce nu ar trebui să crezi în miturile despre functions.php.
Plugin ca alternativă la fișierul functions.phpToate completările pe care le faceți fișierelor șablon (scripturi, contoare, funcții) se pot pierde atunci când schimbați tema activă sau îi aplicați actualizări. Pentru a evita acest lucru și pentru a nu crea haos în functions.php, vă sugerez să utilizați propriul plugin personal.
Să ne creăm propriul plugin - o alternativă la fișierul functions.php. Nu te speria, va arăta exact ca funcțiile tale preferate.php :) Tot ce trebuie să faceți este să adăugați pur și simplu un plugin gol pe site-ul dvs. Și apoi puteți introduce codul necesar în el, așa cum ați făcut cu functions.php.
În primul rând, trebuie să creăm un fișier pe computerul nostru numit functionsphp.php și să îi adăugăm următorul cod:
. De obicei, dacă codul pe care îl introduceți are aceste etichete la început și la sfârșit, atunci acestea trebuie eliminate. De asemenea, fișierul functions.php nu ar trebui să afișeze niciun text (cod HTML sau alt conținut) pe ecran. Ieșirea textului este permisă numai în interiorul funcțiilor care vor fi utilizate ulterior în șablon sau care sunt atașate la cârlige (a se vedea mai jos pentru mai multe detalii).
Nu puteți permite niciun caracter înainte de , inclusiv caractere invizibile (întreruperi de linie), deoarece functions.php este conectat înainte de a seta antetele http (astfel de anteturi transmit diverse date, de exemplu, că acesta este un document html; că codificarea utf-8 este diferită ). Conform regulilor PHP, conținutul ar trebui să fie afișat pe ecran după trimiterea antetelor. Și tot ce este în afara acestuia este conținut - chiar și text afișat pe ecran simbol invizibil\n. Prin urmare, acest text provoacă o eroare.
Pentru a evita erorile, luați în considerare 4 puncte: # 1 Imbricarea corectăDe exemplu, am avut această structură:
.......aici este codul......... ?>
Corect asa:
# 2 Fără întreruperi de rând, spații, text înainte
Acest cod va provoca o eroare:
Dar acesta nu:
Este mai logic să scrii așa:
Se întâmplă ca o întrerupere de linie să fie plasată chiar la sfârșitul funcțiilor.php, iar apoi aceasta devine o problemă reală, deoarece totul pare să fie corect, dar site-ul nu funcționează. De fapt, după?> sau înainte să existe o linie goală
Din acest motiv, mulți dezvoltatori elimină complet eticheta de închidere ?>; acest lucru este acceptabil în PHP. Vă recomand să faceți întotdeauna acest lucru:
în interiorul funcțiilor PHP
Dacă există o funcție în functions.php, atunci etichetele pot fi folosite în interiorul acestei funcții, de exemplu, pentru a evidenția vizual codul HTML din interiorul funcției:
acesta este codul html
Cert este că în acest caz funcția este doar înregistrată și nu efectuează nicio acțiune. Tot ceea ce este în interiorul unei funcții (între ( )) nu funcționează până când această funcție este apelată, iar astfel de funcții sunt de obicei apelate dintr-un șablon sau prin filtre, după ce anteturile HTTP au fost trimise. Prin urmare, în acest exemplu, putem ignora rupturile de linie și putem folosi ?> și .
Pluginul Exec-PHP se află în depozit și este instalat prin meniul din panoul de administrare al motorului.
Dintre setări, există doar una - permisiunea/interzicerea executării codului într-un widget text, nu există nicio opțiune de a dezactiva lucrul în postări și în pagini, dacă trebuie să îl eliminați, dezactivați pluginul.
Pentru a introduce cod PHP într-un articol, acesta trebuie să fie comutat în modul HTML (fila Text). Modul vizual va strica codul cel mai probabil.
Executarea codului PHP în articolele WordPress fără un pluginPrin analogie cu widget-urile, putem înlocui pluginul cu o funcție specială care permite execuția Scripturi PHP in continut. Din păcate, nu am reușit să găsesc o opțiune în care codul să funcționeze automat ca în cazul unui plugin, reacționând la etichete. Necesită utilizarea unui cod scurt. Cunoștințele mele despre PHP nu au fost suficiente pentru a le scrie eu funcția necesară, așa că o voi da așa cum este. Lucrul cu un shortcode are un dezavantaj semnificativ care complică munca, îl voi discuta mai jos.
Cum se utilizează funcția de mai jos
Funcţie:
/* Rulați php în articole și Pagini WordPress: cod */ function start_php($match)( eval("ob_start();".$match."$inline_execute_output = ob_get_contents();ob_end_clean();"); return $inline_execute_output; ) function inline_php($content)( $conținut = preg_replace_callback("/\((.|\n)*?)\[\/startphp\]/", "start_php", $conținut); $conținut = preg_replace("/\(((.|\n )*?)\[\/startphp\]/", "$1", $conținut); returnează $conținut; ) add_filter ("the_content", "inline_php");
/* Rulați php în articole și pagini WordPress: cod */ funcția start_php ($match) ( eval ("ob_start();" . $match [ 1 ] . "$inline_execute_output = ob_get_contents();ob_end_clean();" ); return $inline_execute_output ; funcția inline_php ($conținut) ( $conținut = preg_replace_callback ("/\((.|\n)*?)\[\/startphp\]/" , "start_php" , $conținut ) ; $conținut = preg_replace ("/\(((.|\n)*?)\[\/startphp\]/" , "$1" , $conținut ) ; returnează $conținut ; add_filter ("conținutul" , "inline_php" ); |
Dacă în interiorul codului PHP inserat există Inserări HTML sau text, nu va funcționa. Orice text sau etichete vor trebui introduse folosind comanda echo, ceea ce nu este întotdeauna convenabil. Adică, codul trebuie să fie pur PHP cu 100 de formate corecte.
Dreapta
Echo „Așa va funcționa”;
[starpphp] echo „Așa va funcționa” ; [/startphp] |
Gresit
La sfârșitul anilor ’90, rubrica „Oameni” a lui Denise Dufala din Cleveland Plain Dealer îi prezenta pe cei din nord-estul Ohio care fac o diferență în societate și le-a oferit cititorilor vești bune pe pagina 2 a Sunday Paper. Ea promovează în mod constant soluții sustenabile, inovatoare și sustenabile pentru cele mai presante provocări ale regiunii și oferă servicii fie unei organizații, fie unei varietăți de activități de voluntariat. Femeile Lakewood.
Thomasina din TemeculaPlanificarea familiei Oferim o gamă largă de contraceptive pentru a vă ajuta în planificarea familială. Sunt cele mai muncitoare, angajate și neînfricate femei pe care le cunosc.. Femeile Temecula.
Iedera din HaywardMentalității lor de numărare a fasolei îi pasă dacă femeile participă în mod egal, fără a se întreba la ce participă sau dacă participarea lor este ceva mai mult decât ceremonială. Dar restul este tăcere feministă.. Hayward Musulmane femei singure.
Lynnette din SacramentoPamela Lopez, partener la o firmă de lobby din Sacramento, a spus că de ani de zile s-a confruntat cu sugestii nepotrivite din partea oficialilor bărbați, dar cel mai deranjant episod a avut loc la începutul anului trecut, la o adunare socială a avocaților și lobbyștilor într-un bar din Sacramento. Pot să mă descurc.. Femeile din Sacramento.
Elinor din ClarksvilleDisqus oferă cel mai bun supliment instrumente pentru site-uri web pentru a crește implicarea, ajutăm editorii să alimenteze discuțiile online cu comentarii și. Acolo veți avea ocazia să vă găsiți o potrivire perfectă bazată nu doar pe aspectul fizic, ci și pe compatibilitatea fiziologică.. Clarksville Musulmane femei singure.
Gillian din Sterling HeightsVorbitorul, identificat ca o femeie albă pe nume „Deena”, refuză să-și dea numele complet sau numele organizației pe care o conduce. Este o parte importantă a discuțiilor zilei: ZBA a organizat prima audiere publică pe această temă în decembrie. Femei musulmane singure din Sterling Heights.
Eugenia din OlatheRutele 83 și 81, precum și porțiunea de sud-vest a statului de-a lungul și la sud de U. Treimea vestică a statului - din aproximativ U.. Olathe femei singure musulmane.
Bucurie de la OxnardEa conduce o echipă de doamne care au inimă de decorat sau care doresc doar să dea o mână de ajutor. Ea a condus OC cu 17 puncte, 8 recuperări, 5 asistări și 5 furări. Oxnard femei.
Phoebe din St. LouisDar, lucrurile nu sunt destinat să meargă fără probleme. Deținut în prezent de stat, stadionul preferat este adiacent stației Union, în partea de vest a centrului St.. St. femeile Louis.
Marilyn de la Pompano BeachCumpărați lenjerie la modă, costume de baie măgulitoare pentru o vară elegantă Fără un costum de baie elegant, ați putea să vă considerați gata să participați la una dintre cele mai tari petreceri la piscină ale sezonului. Vei putea obține un look care se potrivește cel mai bine stilului tău personal fără a cheltui o avere.. Pompano Beach femei.
Ruby de la IrvingMembrii unui capitol din Texas al Ku Klux Klan s-au amestecat cu grupul, sub acoperire, cu ochi să își țină propriul marș mai târziu: Îi place să râdă și se bucură de viață. Problema este că Breitbart este aproape indescriptibil de rău la jurnalismul de bază - transmiterea de informații exacte.. Irving femei musulmane singure.
Ophelia din HialeahPotrivit documentelor de căsătorie din Florida, cuplul s-a căsătorit în Ea a început The Fitness Challenge știind că ceva trebuie să se schimbe. Citrus continuă să ofere servicii adulților și copiilor din spectrul nevoilor de sănătate mintală și comportamentală și este unul dintre cei mai mari furnizori de sănătate mintală și comportamentală din Florida de Sud.. Femeile Hialeah.
Ericka din ShreveportRăsfoiți single-urile și reclamele personale din bengali pe lovehabibi - locul preferat de pe web pentru a vă conecta cu singuri bengali din întreaga lume. Musulmanii singuri convertiți muzmatch este cel mai rapidă creștere musulmană pentru modul în care facilitați și facilitați găsirea tinerilor musulmani. unul.. Shreveport femei musulmane singure.
Rosanne din TuscaloosaÎn colaborare cu UMW, Cultivate se străduiește să ofere mai multe oportunități femeilor de a se aduna și de a dezvolta relații semnificative pe măsură ce se apropie și mai mult de Hristos. Lucado invită cititorii să studieze Filipeni 4: Vom exersa vorbirea și ascultarea lui Dumnezeu prin multe formate și metode de jurnal. Femeile Tuscaloosa.
Stella din MiamiSfaturi privind profilul de expert Alcătuirea unui profil de primă clasă este o parte foarte importantă a întâlnirilor online. D scrie despre motivul pentru care oamenii se luptă să renunțe și identifică cei 3 factori comuni care îi împiedică pe oameni să meargă mai departe. Femeile singure musulmane din Miami.
Winifred din Las CrucesIntenția acestui program este de a preveni abuzul și neglijarea copiilor în familiile care se confruntă cu violența domestică, oferindu-le acestor părinți abilitățile și cunoștințele necesare pentru a reduce utilizarea violenței în relațiile cu copiii lor, pentru a îmbunătăți abilitățile de comunicare și pentru a întrerupe ciclul generațional de abuz. Nu lăsați un comentariu regulat dacă doriți ca această listă să fie actualizată rapid.. Las Cruces femei.
Hollie din Round RockÎnțeleg recenzia anterioară despre recepție, deoarece atât de multe companii de asigurări necesită o „recomandare”. Bruce și-a citit scanările făcute la Urgențele de la Seton Williamson. Femeile din Round Rock.