at skabe dit eget widgets ved hjælp af forskellige wordpress apis: indførelse

, skabe din egen widgets ved hjælp af forskellige wordpress apis: indførelse,,,,, 68,,,,,,,, 12,,,,,,, det cyber - mandag envato tuts + kurser vil blive reduceret til $3.- og' t miss.,,,,, hvad du vil lave, er en pæn måde at give widgets lodsejerne lidt kontrol over se (og sommetider funktioner) af deres wordpress lokaliteter.   i denne serie, vil vi skabe en håndfuld wordpress   widgets ved at kombinere den widgets api med andre eksterne apis.,, serien består af følgende tutorials:,, en indledning, stillinger forbundet med dims, dims ind, fao dims, dims mest populære stillinger med google analyse integration, fysiske adresse dims   med   google maps integration, konklusion i denne lektion, jeg vil præsentere dig. til wordpress widgets api ved (igen) at skabe en enkel tekst widget.vi vil dissekere og undersøge de forskellige funktioner, som den dims, således at forstå, hvordan wordpress widgets arbejde i almindelighed.,, denne dims vil også tjene som et grundlag, på hvilket vi vil bygge på ved at skabe andre widgets i de efterfølgende dele af denne serie.,, wordpress widgets,, wordpress widgets tilføje indhold og egenskaber din sidebars eller widgetized områder af temaet.   widgets har til formål at skabe en enkel og brugervenlig måde at give design og strukturel kontrol af wordpress tema for brugeren, uden at de skal vide, hvordan koden.,, de fleste wordpress widgets tilbyde tilpasning og muligheder, som f.eks. skemaer, der skal udfyldes, valgfrit, billeder og andre tilpasning træk.,, undersøge widget - klasse.den letteste måde at skabe en wordpress dims er til at arve, wp_widget, klasse.den måde, du kan bruge den indbyggede funktioner for at ajourføre den dims, udviser den dims, og skabe en admin - grænseflade til widget.,, til at forstå, hvordan widgets arbejde, vi vil skabe, og undersøge en tom widget.så vil vi fastlægge hver funktion, som er den dims, så se, hvordan de arbejder sammen for at skabe en dims, dims. vores definition, <?php klasse tutsplustext_widget udvider wp_widget (//widget konstruktøren offentlig funktion __construct() {} offentlige funktion widget ($args $instans) (//output indholdet af den dims} offentlige funktion form ($)) (//skaber den anden form) //ajourføring widget erstatte gamle tilfælde med nye offentlige funktion ajourføring ($new_instance, $old_instance) (//- processer widget optioner på redde}},,, funktioner i detaljer, lad os se på hver enkelt funktion mere detaljeret:,, __construct(), denne funktion registre widget med wordpress,, widget(), denne funktion er ansvarlig for avancerede fremvisning af den dims.det output, indholdet af den dims, dims, processer, update(), muligheder for at redde.brug denne funktion til at opdatere din dims (option).denne funktion skal to parametre:,,, $new_instance, – værdier har lige sendt for at blive reddet.disse værdier vil komme fra som fastlagt i form() metode, $old_instance, – tidligere reddede værdier fra databasen, være sikker på, at desinficere alle brugere indsendte værdier.bruger værdier altid skal renses, før det sendes til databasen, form(),,, form(), metode /funktion, bruges til at definere de back - end - dims form –, som de ser i widgets panel i instrumentbrættet   denne form gør det muligt for brugeren at oprette den titel og andre muligheder for widget.,, denne funktion skal følgende parametre (er):,,, $instans, – tidligere reddede værdier fra databasen, skaber en dims,, til at skabe vores dims, vi vil følge følgende trin:,, at definere, hvad vi er ved at skabe, registrere vores dims med wordpress skabe back - end - form, undtagen værdier den database, definere forenden display, registrere den dims, hvad skal vi skabe?, som vi tidligere har nævnt, er vi ved at skabe en enkel tekst dims, der gør det muligt for brugeren at træde en titel og en vilkårlig tekst, der så vil være produktion i forenden af deres websted, hvor den dims, dims konstruktøren er placeret.,,, konstruktøren sætter os i stand til at nulstille vores dims, som ikke overskrives modervirksomheden klasse (standard, wp_widget, klasse).,,, <?folkesundhedsprogrammet aspektet offentlig funktion __construct() (moder: __construct ('tutsplustext_widget, __ ('tutsplus tekst dims "," tutsplustextdomain) system ('classname = > tutsplustext_widget,'description = > __ (en grundlæggende tekst dims til demo den tutsplus serie om at skabe deres egen widgets. "" tutsplustextdomain')); load_plugin_textdomain ('tutsplustextdomain, falske, basename (dirname (__file__))./sprog)}, i kodeksen, vi kalder den forælder, wp_widget klasse er konstruktion, funktion og give det den foolowing argumenter:,, base id - en entydig identifikator for den dims.skal være lavere.hvis stå tomme, en del af den dims er klasse navn vil blive anvendt, navn - det er betegnelsen for den dims vises på konfiguration side (i dashborad), og en (frivillig) system, der indeholder en classname og beskrivelse.beskrivelsen er vist på konfiguration side (i wordpress instrumentbræt).,, bygning i enden form, den anden form vil bestå af to områder – en titel og en textarea område.her er et skærmbillede af den form, som det vil se ud i widgets panel:,,,,,,, at generere ovennævnte form, vi ville starte med ren html og derefter erstatte nogle attributternes værdier med folkesundhedsprogrammet variabler og udtryk.The following is the HTML code to create the two fields:,,,,,<p> <label for="title">Title</label> <input class="widefat" id="title" name="title" type="text" value="WIDGET TITLE" /> </p> <p> <label for="message">Simple Message</label> <textarea class="widefat" rows="16" cols="20" id="message" name="message">message...</textarea> </p>,,,To move from this to our final code for the form() function, we will need to make some of the attributes above dynamic – namely, name, id and the label’s for attribute (which has to match the id of the HTML that the label is for). vi vil også erstatte værdien af teksten område og indholdet af textarea område med dynamiske værdier fra databasen, hvis de er blevet reddet,.,, her er den kode, ender vi med:,,,, <?php /* * * sidst widget form.* * @ se wp_widget: form() * * @ param array $instans tidligere reddede værdier fra databasen.* /offentlige funktion form (f.eks. $$) (afsnit = esc_attr ($) ['title ']); $besked = esc_attr ($) ['message']).> < p > < etiket til = "<?php echo $- > get_field_id ('title)?> "> <?folkesundhedsprogrammet aspektet _e ('title: ").> < /etiketten > < input = "klasse widefat" id = "<?php echo $- > get_field_id ('title)?> "navn =" <?php echo $- > get_field_name ('title)?> "type =" tekst "værdi =" <?php echo $afsnit?> "/> < /p > < p > < etiket til =" <?php echo $- > get_field_id ('message)?> "> <?folkesundhedsprogrammet aspektet _e ('simple besked ").> < /etiketten > < textarea klasse = "widefat" rækker = "16" koller = "20" id = "<?php echo $- > get_field_id ('message)?> "navn =" <?php echo $- > get_field_name ('message)?> "> <?php echo $budskab.?> < /textarea > < /p > <?php},,, kode over adgangsveje og tildeler tidligere reddede værdier fra databasen to variabler – $titel, og $besked.vi så bruge det, esc_attr(), indkodning tilbage for at undgå at bryde vores værdier og kode.vi gentager de $afsnit attribut til værdien attribut i tekstfeltet, og echo 's $budskab som indholdet af textarea område.,, i kodeksen, ovenfor, vil de bemærke to metoder, som sandsynligvis er nyt for dig – get_field_id() og get_field_name().,,, get_field_id(), – tager område navn som et argument og konstruktioner id - attributter til brug i form() områder.det sikrer, at de returnerede felt er enestående, get_field_name(), – tager område navn som et argument og konstruktioner navn attributter til brug i form() områder.den sikrer, at den tilbage inden navn er enestående.,, etiketten hundetegn, for attribut er kodet til at gentage de id - værdien af de elementer, de kalder.,,, widefat, klasse anvendes til at sikre, at din dims er områder har samme udseende som andre områder i hele wordpress instrumentbræt.,, opdatering af vores widget (optioner), at opdatere vores dims, vi vil skrive passende kode i opdateringen, metode.her er vores kode:,, <?php /* * * steriliseret widget form værdier, som de er reddet.* * @ se wp_widget: update() * * @ param array $new_instance værdier har lige sendt for at blive reddet.* @ param array $old_instance tidligere reddede værdier fra databasen.* * @ tilbage array ajourførte sikre værdier for at blive reddet.* /offentlige funktion ajourføring ($new_instance, $old_instance) ($) = $old_instance. $instans ['title '] = strip_tags ($new_instance ['title']); $instans ['message '] = strip_tags ($new_instance ['message']); tilbage $instans.}, ovennævnte funktion det tager to parametre –, $new_instance og $old_instance,,,, $new_instance, er et system, der indeholder den nye miljøer (i dette tilfælde af den dims), der netop er blevet opført af brugeren via backend form, som vi fastlægger i form() funktion. $old_settings, er et system med gamle indstillinger.det er de værdier, der i øjeblikket er oplagret i databasen,.,, update() funktion vender tilbage med en række indstillinger til at redde eller forkert at annullere opsparing., i ovennævnte kode, vi tildeler $old_instance til $instans variable og erstatte sin titel og budskab nøgler med værdier fra $new_instance.ved at vende den ny og ajourført system, vi effektivt at ajourføre vores widget indstillinger.,,, strip_tags(), fjerner html og folkesundhedsprogrammet mærker fra funktion en snor, der er givet til det.vi medtager denne funktion for at undgå en situation, hvor brugerne af temaet ikke tæt på hundetegn kom ind via den anden form, hvilket resulterer i jeres sted at bryde (ikke gør tilstrækkeligt).,, at front,,, widget(), funktion er ansvarlig for af ende angivelse af widget.det tager to parametre –, $args og $eksempel.,,, $args, er et system videregives til de register_sidebar() funktion ved fastlæggelsen af de nærmere /widgetised område, hvor den dims er placeret.det er i din functions.php, fil.nedenfor er et eksempel på, register_sidebar(), erklæring:,,,,,, array indeholder definitioner af de indledende og afsluttende mærkater for widget sig, og at den dims er afsnit.,,, $instans, er et system, der indeholder de indstillinger til tilfælde af den dims.disse forhold vil have hentet fra databasen.,,, vi gør brug af rfid - brikker, nævnt i den endelige widget kode nedenfor:,, <?php /* * * front - dims.* * @ se wp_widget: widget() * * @ param array $args widget argumenter.* @ param array $instans reddede værdier fra databasen.* /offentlige funktion widget ($args $instans) (ekstrakt ($args); $afsnit = apply_filters ('widget_title, $instans ['title']); $besked = $instans ['message '] echo $before_widget; hvis ($titel) (echo before_title dollars.$titel.$after_title;} echo $budskab. echo $after_widget;}, i ovennævnte kode, vi endelig få kode forenden af vores widget.vores widget blot output, en titel og vilkårlige besked (tekst).koden gør det og sætter widget selv og den dims er afsnit i indledningen og afslutningen af rfid - brikker, defineret i functions.php, for den specifikke widget - området (aftale), hvor den dims er placeret.,, vi indfører, extract(), funktion, som nogle måske ikke er bekendt med.denne funktion er en automatiseret system og vender tilbage til sine nøgler som variabler.det sætter os i stand til at gentage before_widget dollars i stedet for $args ['before_widget '], således at forenkle reglerne lidt.,, den endelige produktion på et virkeligt websted vil se ud, som om noget lignende:,,,,, registrere den dims, dims, skal registreres med wordpress, efter at det er fastlagt, således at det bliver tilgængelige i den dims panel af vores wordpress instrumentbræt.,, <?folkesundhedsprogrammet aspektet add_action ('widgets_init, function() {register_widget (' tutsplustext_widget)}), den sidste kode, for at holde det enkelt for de endelige brugere af vores widgets, skal vi afslutte vores widget kode i en wordpress stik af, så det er let at installere. dette vil også gøre det muligt for vi har alle den kode, vi vil skabe i hele serien i en enkelt fil.,, her er den endelige kode:,,, <?php /* stik af navn: tutsplus dims - stik af uri: http://code.tutsplus.com beskrivelse: et stik af med forskellige widgets oprettet i en tutsplus serie om wordpress widgets version: 0,1 forfatter: tutsplus forfatter uri: http://code.tutsplus.com tekst, område: tutsplustextdomain kørekort: gplv2 ophavsret 2014 tutsplus dette program er gratis software; man kan omfordele og /eller ændre den under bestemmelserne i den nationale samlingsregering generelle offentlige kørekort, 2. udgave, som blev offentliggjort af fri software - fonden.dette program er fordelt i det håb, at det vil være nyttigt, men uden nogen garanti, selv uden underforstående garantier for merchantability eller egnethed til et bestemt formål.se den nationale samlingsregering generelle offentlige licens for flere detaljer.du skulle have modtaget en kopi af den nationale samlingsregering generelle offentlige kørekort med dette program; hvis ikke, skrive til gratis software - instituttet, inc., 51, franklin st. femte sal, boston, mor 02110-1301 usa * /klasse tutsplustext_widget udvider wp_widget {offentlige funktion __construct() (moder: __construct ('tutsplustext_widget, __ ('tutsplus tekst dims "," tutsplustextdomain) system ('classname = > tutsplustext_widget,'description = > __ (en grundlæggende tekst dims til demo den tutsplus serie om at skabe deres egen widgets. "," tutsplustextdomain')); load_plugin_textdomain ('tutsplustextdomain, falske, basename (dirname (__file__))./sprog)} /* * * front - dims.* * @ se wp_widget: widget() * * @ param array $args widget argumenter.* @ param array $instans reddede værdier fra databasen.* /offentlige funktion widget ($args $instans) (ekstrakt ($args); $afsnit = apply_filters ('widget_title, $instans ['title']); $besked = $instans ['message '] echo $before_widget; hvis ($titel) (echo before_title dollars.$titel.$after_title;} echo $budskab. echo $after_widget;} /* * * steriliseret widget form værdier, som de er reddet.* * @ se wp_widget: update() * * @ param array $new_instance værdier har lige sendt for at blive reddet.* @ param array $old_instance tidligere reddede værdier fra databasen.* * @ tilbage array ajourførte sikre værdier for at blive reddet.* /offentlige funktion ajourføring ($new_instance, $old_instance) ($) = $old_instance. $instans ['title '] = strip_tags ($new_instance ['title']); $instans ['message '] = strip_tags ($new_instance ['message']); tilbage $instans.} /* * * back end - widget form.* * @ se wp_widget: form() * * @ param array $instans tidligere reddede værdier fra databasen.* /offentlige funktion form (f.eks. $$) (afsnit = esc_attr ($) ['title ']); $besked = esc_attr ($) ['message']).> < p > < etiket til = "<?php echo $- > get_field_id ('title)?> "> <?folkesundhedsprogrammet aspektet _e ('title: ").> < /etiketten > < input = "klasse widefat" id = "<?php echo $- > get_field_id ('title)?> "navn =" <?php echo $- > get_field_name ('title)?> "type =" tekst "værdi =" <?php echo $afsnit?> "/> < /p > < p > < etiket til =" <?php echo $- > get_field_id ('message)?> "> <?folkesundhedsprogrammet aspektet _e ('simple besked ").> < /etiketten > < textarea klasse = "widefat" rækker = "16" koller = "20" id = "<?php echo $- > get_field_id ('message)?> "navn =" <?php echo $- > get_field_name ('message)?> "> <?php echo $budskab.?> < /textarea > < /p > <?folkesundhedsprogrammet) /* register den dims * /add_action ('widgets_init, function() {register_widget (' tutsplustext_widget)}), konkluderes, at i denne forelæsning, vi indførte den serie – skabe dit eget wordpress widgets ved hjælp af forskellige grænseflader.vi tog en dybere kig på  , hvad de er, hvor de arbejder, og hvordan til at skabe en. formålet med denne forelæsning var at fremlægge en grundig indføring i widgets api - og skabe et grundlag dims fra, som den anden widgets i denne serie kan blive skabt.,, i den næste del af den serie vi er ved at skabe en stillinger forbundet med widget.i mellemtiden, du er fri til at gå, nogen spørgsmål eller bemærkninger i form,,,,,,,, nedenfor.

Final product image
Our widgets back-end configuration form
Sample register_widget declaration
Our text widget on an actual site



Previous:
Next Page: