at bygge din første expressionengine stik af

, opbygge din første expressionengine stik af,,,,, andel,,,,,,,, 3,,,,,,, det cyber - mandag envato tuts + kurser vil blive reduceret til $3.- og' ikke glip af, uanset hvor fantastisk cms - er, at der vil være tidspunkter, hvor du er forpligtet til at opfylde et specifikt behov, som ganske enkelt ikke arbejde ud af æsken.her vil vi undersøge, om at skabe plugins expressionengine for at opfylde disse behov.,,, version bemærker, for nylig ellislab, skaberne af expressionengine, meddelte den officielle ud af expressionengine 2.0 som 1. december 2009.bemærk, at denne lektion er skrevet med detaljer til versioner 1.6. x. visse detaljer såsom fil veje og globale genstande vil ændre sig for version 2.0.disse oplysninger vil være forskellige generel anvendelse og tilgang til stik af beskæftigelse for expressionengine forbliver den samme.,, typer af expressionengine tilføjelser, som mest solide forvaltningsordninger, der er til rådighed, expressionengine eller "ee", kommer med en række måder for en entreprenør at tilføje funktioner, som ikke kan være der ved misligholdelse.i modsætning til populær systemer, som wordpress, ee har forskellige betegnelser for disse tilføjelser, afhængigt af hvordan de reagerer med din hjemmeside.der er tre primære måder du kan tilføje funktioner til ee 1.6. x, der er plugins, udvidelser og moduler.plugins primært beskæftige sig med at ændre din model kode og har tendens til at være mere en front end arbejde.udvidelser vil typisk funktionaliteten i den anden, eller kontrol panel ved at binde til "kroge" i systemet.moduler har tendens til at være større i omfang, har deres eget område i panelet og kan også anvendes på forenden af ee websted.moduler kan være fuldstændig blæst apps møde inden for energieffektivitet og anvendelse af medlemskab, skabeloner, database, osv., som er nødvendige, erfaring, det ville hjælpe at vide, inden vi går videre:,, hvordan til fælde og installere expressionengine i en udvikling, miljø, grundlæggende forståelse af expressionengine kontrol panel og model parsing, grundlæggende forståelse af folkesundhedsprogrammet og mål rettet programmering, hvordan man læser dokumentation.,, vores stik af, for denne forelæsning, vi kommer til at skabe et enkelt stik af, at scanninger gennem data videregives til det og sætter visse tråde med html hundetegn.det er en meget enkel anvendelse af ee, stik af og vise dig, hvor let det er at komme i gang med stik af udvikling.vores stik af, vil blive anvendt til at søge efter og erstatte akronymer, som vi bruger som udviklere.på grund af det eksempel, som vi vil holde mig til tre: http: //, css og rss.lad os kalde det stik af "auto akronym.", hvor skal jeg begynde?det bedste sted at begynde med at tilføje om udvikling er den officielle expressionengine dokumentation.før du hopper i udviklingslandene for expressionengine, du skal læse deres retningslinjer, som, hvis de bliver fulgt, hjælpe med at holde systemet kører godt.retningslinjerne dækker ting som at konventioner, ydeevne og sikkerhed.jeg vil give dig et par minutter til at læse i expressionengine tilføje om retningslinjer for udvikling, okay, nu har du læst, at vi kan begynde at se på, hvordan vi rent faktisk skabe plugins og hvad gør en enkelt, brikker i puslespillet, stik af kræver en klasse og mindst én funktion.den navngivningskonvention er meget specifikke, så vi er nødt til at sørge for, at vi gør det korrekt og omhyggeligt.navnet på vores stik af er auto akronym, og det kommer til at lege med vores filnavn, klasse navn, og vi mærker.filnavnet tager navnet på din stik af og erstatter alle rum med understreger, mens prepending "pi." til fronten.alle bogstaverne skal være lavere.det ville gøre vores file navn "pi. auto_acronym. folkesundhedsprogrammet".vi plugins går ind i et fælles register, beliggende i henhold til system /plugins (forestille sig, at). den hedder svarende til filnavn, med undtagelse af det første bogstav bliver udnyttet.det gør vores klasse navn "auto_acronym".stik af, vil det kun har brug for en funktion, så det har samme navn som den klasse.det vil også være de navne, vi bruger i vores ee stik af rfid - brikker.stik af, altid starte med "exp", som siger, at den model, parser, "hej!jeg har brug for noget behandling her! "hvad følger vil være navnet på din klasse alle små giver os: "exp: auto_acronym".den tredje kategori af en stik af rfid - kalder funktion i stik af klasse.i vores eksempel, vi vil bare bruge den funktion, den pågældende, så vi kun brug for klasse navn.så her er, hvad vi ved om vores stik af:,, at kode, lad os se, hvad vores kodeks hidtil:, <?php klasse auto_acronym {funktion auto_acronym() {}} /* af fil pi.auto_acronym.php * /* placering:. /system /plugins /pi.auto_acronym.php * /, for dem af jer, der er bekendt med wordpress stik af udvikling, ved du det wordpress ekstrakter nogle data fra bemærkninger kode, når visning af oplysninger i stik af manager.expressionengine gør noget lignende, undtagen med et system for stik af fil.lad os gå videre og sige, at vores fil over klasse og give den den fornødne information. <?php $plugin_info = system ('pi_name = > "auto akronym, pi_version = > 1, 0, pi_author = >" erik reagan, pi_author_url = > http: //////////////erikreagan. kom, pi_description = > "automatisk var visse akronymer i html < akronym > -", "pi_usage = > auto_acronym: usage()) klasse auto_acronym {funktion auto_acronym() {}} /* af fil pi.auto_acronym.php * /* placering:. /system /plugins /pi.auto_acronym.php * /, hver af array - nøgler skal være tydeligt, for så vidt angår, hvad de er til.den sidste nøgle er imidlertid lidt anderledes.det er ikke bare en snor, ligesom de andre.det bruges til at fortælle expressionengine kontrolpanel, hvor de finder anvendelse, eller blot en dokumentation om stik af.hver ee stik af bør have en vis grundlæggende docs i stik af, så de ved stik af kan kun mening i panelet, og se, hvordan udnytte hundetegn.dette er gjort ved at tilføje en funktion til din stik af klasse, som hedder "anvendelse".jeg kan godt lide at gøre brugen funktion i min klasse, så lad os gå videre og kopi &, pasta, f.eks. fra expressionengine stik af varer og fjerne indholdet mellem?> og <?php hundetegn, da vores indhold vil gå der. ////////////---------------------------------------- stik af anvendelse ---------------------------------------- //denne funktion beskrives det, hvordan stik af anvendes.////////- og output stødpudeevne (buffer) funktion usage() {ob_start();?> <?php $buffer = ob_get_contents(); ob_end_clean(); tilbage $buffer}, vores anvendelse ikke vil blive skrevet efter vi afslutte vores stik af.lad os bare få en tekst til afprøvning.husk på, at denne tekst vil blive behandlet som en selv, og alle typer omregnes til html http: //enheder, ikke vil fungere.lad os se på vores stik af i sin helhed hidtil <?php $plugin_info = system ('pi_name = > "auto akronym, pi_version = > 1, 0, pi_author = >" erik reagan, pi_author_url = > http: //////////////erikreagan. kom, pi_description = > "automatisk var visse akronymer i html < akronym > -", "pi_usage = > auto_acronym: usage()) klasse auto_acronym {funktion auto_acronym() {} //////////////////////////////---------------------------------------- stik af anvendelse ---------------------------------------- //denne funktion beskrives det, hvordan stik af anvendes.////////- og output stødpudeevne (buffer) funktion usage() {ob_start();?> dette er hvor vores forenklet dokumentation vil gå <?php $buffer = ob_get_contents(); ob_end_clean(); tilbage $buffer) /* af fil pi.auto_acronym.php * /* placering:. /system /plugins /pi.auto_acronym.php * /er, nu hvor vi har et skelettet stik af fil, vi er nødt til at redde det til vores system /plugins adresseregister for at sikre, at den bliver læst af systemet ordentligt.efter at redde det, vil de se det under administration > værker > stik af manager.hvis du klikker på vores nye stik af, du bør se en side, der indeholder de oplysninger, vi har til vores stik af, og gøre det arbejde, som vores stik af nu er ved at blive trukket ind i expressionengine system korrekt, kan vi gøre det rent faktisk, gør noget.hver stik af afkast, en form for oplysninger.disse data vil altid komme fra en standardiseret variable at ee vil se efter "return_data".den første ting, vi ønsker, er at definere det, før vores første funktion inden for klassen.så, bare for afprøvning, vi vil anvende det i vores første opgave at vende tilbage en lille smule. klasse auto_acronym {var $return_data = "" funktion auto_acronym() {$- > return_data = "for at sikre, at det fungerer"}, nu da vi har nogle data, der bliver tilbage, vi kan teste det på forenden af vores hjemmeside.jeg bruger en minimal skabelon for testning, lige nu, - - men du kan bruge dette i nogen af dine expressionengine modeller.hvis du husker fra den tidligere vores stik af tag er (exp: auto_acronym}, og eftersom vi kun har én funktion, vi har ikke brug for en tredje del i denne stik af.her er, hvad min model kode ligner efterfulgt af, hvad min browser viser:, < h1 > stik af pædagogiske < /h1 > < p > (exp: auto_acronym} < /p >,, ikke ligefrem er banebrydende, men det bliver os. et skridt tættere på vores mål.nu, hvor vi ved, hvordan at videregive oplysninger tilbage, kan vi se på data videregives til vores stik af., databehandling med vores stik af, den første metode, som vi vil fokusere på at behandle data, hvor expressionengine læser alle data mellem stik af et par.- som du ikke allerede ved vores et par minder meget om, hvordan html - par.vi har en åben tag, efterfulgt af data, efterfulgt af en nøje mærke, som denne: (exp: auto_acronym} denne bliver forarbejdet {/exp: auto_acronym}, expressionengine gør det meget let at få data med anvendelse af modellen objekt.i dette tilfælde skal vi gøre det globale inden for vores funktion, således at vi kan få adgang til det.så vi skal definere vores variabel ved at ringe til at spille "tagdata" variabel.denne variabel er data mellem vores åbne og lukke et par.se:, funktion auto_acronym() (global $tmpl. $data = $tmpl - > tagdata;}, lad os gøre noget meget enkelt med vores data og gøre det dristige, eftersom det er sms lige nu.vi vil tilføje < stærk > mærker omkring det og så definere vores return_data variabel i overensstemmelse hermed.det er, hvad vores kode, model og gjort side bør nu:,, stik af:,, funktion auto_acronym() (global $tmpl. $data = < stærk >. $tmpl - > tagdata. < /stærk > "$- > return_data = $data), model:,, < h1 > stik af pædagogiske < /h1 > (exp: auto_acronym} < p > det bliver forarbejdet på < /p > {/exp: auto_acronym},, der er afsagt, om:,,, gør noget!okay, okay.lad os få det sjovt med det nu.vores mål med dette stik af, er at skanne data videregives til det fælles net, udvikling af akronymer.jeg sagde, at vi ville bruge 3 for resten: http: //, css & rss.det første, vi ønsker, er at sætte dem alle i et system inden for vores funktion.bemærk, at hvis vi brugte dette system i stik af og har flere funktioner, ville vi sandsynligvis have det skal opbevares uden for den pågældende, så den kunne blive ringet op af nogen af de funktioner, auto_acronym() (global $tmpl funktion; $data = $tmpl - > tagdata. $akronymer = system ("= html > hypertext markup language", "forskning" = > brusende stil ark, rss) = > simpelt syndikering)}, nu hvor vi har vores mærke data sammen med den mængde af akronymer, vi er nødt til at tage en foreach() loop på akronymer.den første ting, vi skal gøre, er at løbe den forkortelse, og tagdata gennem en strpos() funktion for at sikre, at den forkortelse, er faktisk i vores snor.grunden til, at vi gør dette, er, at vi ikke løbe unødige snor afløsere.hvis din akronym ordbog havde hundredvis af værdier, og du løber igennem en lang artikel risikerer det unødvendige forarbejdning.hvis, og kun hvis akronymet er inden for vores mærke data, vil vi anvende de str_replace() funktion at tilføje på < akronym > hundetegn.efter vores foreach() loop - vi vil definere vores return_data variabel i overensstemmelse hermed.her er, hvad det ligner:, funktion auto_acronym() (global $tmpl. $data = $tmpl - > tagdata. $akronymer = system (http: //= > hypertext markup language "," forskning "= > brusende stil ark, rss) = >" simpelt syndikering); for hvert ($akronymer som $kort = > $længe) (hvis (strpos ($data, $kort).= = falske) ($data = str_replace ($kort, < akronym afsnit = ". $længe." ">. $kort. < /forkortelse >, $data)}} $- > return_data = $data;), for at afprøve dette ordentligt, er vi nødt til at ændre vores model, således at det faktisk har nogle af os ønskede akronymer i det.jeg vil ændre min model til dette:, < h1 > stik af pædagogiske < /h1 > (exp: auto_acronym} < p > mit navn er erik og jeg er misbruger.jeg bliver oppe sent i aftes mærkning op html og css med magiske tilpasning.whitespace taler for sig selv i min pleje og finesse i kodeksen.min rss abonnenter, vent på deres tæer til mit næste eksempel kode skønhed.okay... ikke rigtig. < /p > {/exp: auto_acronym}, at vores model og forfriskende vores browser skal udarbejde denne:,, nu kører det!nu, hvor vi er korrekt forarbejdning tags mellem åbne og lukke et af vores stik af, lad os se den anden mulighed, nemlig at data inden for en enkelt brik.ved hjælp af et enkelt mærke med plugins vil kræve, at en parameter, således at data er stadig kanaliseret til de stik af, at processen.du kan nævne den parameter, hvad du vil.i vores tilfælde vil vi bruge det og tilføje det til vores model: (exp: auto_acronym data = html "}, nu hvor vi har et fælles mærke, vi er nødt til at finde en måde at bruge det på vores stik af.andre parametre, som de ønsker at bruge i din stik af kan være ude efter samme model objekt, som vi brugte tidligere.i stedet for at være til rådighed via en variabel, du skal hente den med en funktion til fetch_param().vi ønsker, at vores pluign kan anvendes enten med et enkelt mærke eller en et par, så vi vil tage hensyn til dette, når vi definerer vores $data variabel.det er, hvad vi vil ændre: //oprindelige $data = $tmpl - > tagdata; //nye $data = ($tmpl - > fetch_param ('data ')?$tmpl - > fetch_param ('data): $tmpl - > tagdata,, hvis du ikke er bekendt med denne syntaks er dybest set siger, "hvis data foreligger (eller vender rigtigt parameter) og bruge det som vores data er variabel, ellers bruge tagdata mellem et par". denne ændring vil gøre det muligt for os at anvende både et par og enlige mærkater med data parameter defineret.her er, hvad vi skal gøre nu, model, vi er der næsten!nu har vi et velfungerende expressionengine stik af.det sidste skridt i gennemførelsen af det er, at i nyttige "anvendelse".lad os gå ned til usage() funktion og tilføje nogle simple dokumentation til kontrolpanelet., funktion usage() {ob_start();?> "ordbog" forkortelser er lagret i et system inden for plugins /pi.auto_acronym.php fil.automatisk bliver en snor i en html akronym, hvis det ligger inden for vores akronym ordbog.du kan gøre det med enkelte ord eller store blokke af teksten.eksempel =========================== (exp: auto_acronym data = html "} dette output: < akronym afsnit =" hypertext markup language "> html < /forkortelse > i din expressionengine skabelon.stor blok eksempel =========================== (exp: auto_acronym} < p > mit navn er erik og jeg er misbruger.jeg bliver oppe sent i aftes mærkning op html og css med magiske tilpasning.whitespace taler for sig selv i min pleje og finesse i kodeksen.min rss abonnenter, vent på deres tæer til mit næste eksempel kode skønhed.okay... ikke rigtig. < /p > {/exp: auto_acronym} dette output: < p > mit navn er erik og jeg er misbruger.jeg bliver oppe sent i aftes mærkning på < akronym afsnit = "hypertext markup language" > html < /forkortelse > og < akronym afsnit = "kaskade - plader" > css < /forkortelse > med magiske tilpasning.whitespace taler for sig selv i min pleje og finesse i kodeksen.min < akronym afsnit = "simpelt syndikation" > rss < /forkortelse > abonnenter, vent på deres tæer til mit næste eksempel kode skønhed.okay... ikke rigtig. < /p > <?php $buffer = ob_get_contents(); ob_end_clean(); tilbage $buffer), nu vores panel skal se sådan noget, tillykke!du har nu afsluttet din første expressionengine stik af.forhåbentlig vil dette åbne døre for dig nu, som du kan se, hvor let det er.nydelig og sende data er meget enkelt, og du kan løbe en masse på magi fra stik af sig selv.jeg er vært for et stik af med min github konto, hvor du kan downloade hele stik af kode der, hvis du vil.næste i vores expressionengine tilføje serie vil vi se, at en simpel udvidelse til kontrolpanelet.bliv hængende!, p.s., glem ikke at se de andre fedt expressionengine tutorials!,, at google kort med ee, skabe et slideshow med lysbilleder pro og expressionengine, bliver en expressionengine superstjerne i 5 dage, med os på twitter, eller abonnere på nettuts + rss foder til den bedste web udvikling tutorials på nettet.,,,











Previous:
Next Page: