grave i det tema, customizer: øve ii

, at temaet customizer: øve ii,,,,, andel,,,,,,,,,,,,,,,,,, det cyber - mandag envato tuts + kurser vil blive reduceret til $3.- og' t miss. denne post er en del af en serie kaldet grave i det tema, customizer. graver sig ind i emnet customizer: at jeg, i den tidligere post, vi behandlede emnet customizer komponenter i handlinger.i denne del, vil jeg gerne vise dig yderligere tre ting, som jeg mener er vigtigt for dig, sanitization, transport, og en udvidet komponenter i tema customizer. før jeg læser det, jeg vil anbefale dem at revidere de foregående artikler i denne serie.,,, sanitization, sanitizing data ikke et nyt problem, men det er en vigtig ting, der bør overvejes nøje.data sanitization, kan du være sikker på, at deres data er behørigt godkendt. i det tema, customizer, for at validere de data, vi er nødt til at have en validering af funktion først, så vi er nødt til at definere denne funktion som værdien af den ejendom, sanitize_callback, ved at tilføje en ny ramme. i den foregående artikel, - blev der nedsat en gruppe af miljøer, herunder en række, e - mail og tilføjede en input - område.vi vil bruge dem i følgende eksempler. jeg vil skrive en enkelt funktion af det input - værdien er et heltal og større end nul:, funktion check_number ($) værdi {$værdi = (int) $værdi; //kraft værdien i hele tal.afkast (0 < $værdi).værdi: $);}, og husk at angive værdien af den, sanitize_callback, tilskriver ved at skabe en ramme.erstatte den gamle erklæring om, wptuts ['number '], som fastsætter: $wp_customize - > add_setting (' wptuts [antal] «, system ('default = > 0,'type = > "mulighed",'sanitize_callback = > check_number ')); vi har lige skabt en enkelt garanti for input - værdi skal være af typen heltal og større end nul. det, check_number, funktion vil blive koblet til et filter, hvis opgave det stadfæster et nyligt forelagte værdien af de nuværende rammer.de fandt et argument for at fungere i denne aktion, $værdi, i dette tilfælde, der indeholder en ny dataværdi. vores stumper vil undersøge denne variabel, uanset om det er på vores data, og hvis, den tilbage, ellers vil det afkast, som en værdi af, nul, og data vil blive forkastet, og vil ikke blive reddet. i det andet eksempel, jeg vil gerne vise dig, hvordan at validere en e - mail - område.nedenfor er der en validering funktion:, funktion check_email ($) værdi {afkast (is_email ($) værdi).værdi: $);}, er også nødt til at definere, sanitize_callback, funktion for, wptuts ['email '], hvori der. $wp_customize - > add_setting (' wptuts [e - mail] «, system ('default = > mail @ post. kom,'type = > "mulighed",'sanitize_callback = > check_email '));,,, is_email, er en indbygget wordpress funktion, der kontrollerer, at en e - mail er gyldig. ved misligholdelse, er temaet customizer har også nogle sanitization funktioner.en, sanitize_hex_color_no_hash, funktion, der sikrer data skal være en forbandelse farve uden en hash, og en anden javascript callback funktion er, maybe_hash_hex_color, som garanterer hex farve skal være prepended af hash, da denne værdi anvendes i javascript kode. du kunne henvise til vores post om data sanization, eller validering af data i wordpress codex.,, transport, husker fra den tidligere artikel hvad drøftede vi, om begrebet indstillinger transport ejendom.du ved allerede, transport, har to værdier, som også er tidligere misligholdelse er, at genopfriske, og sidstnævnte er postmessage,.under henvisning til den tidligere artikel om at se på de forskellige disse.,,, transport, er, hvordan data overføres.,, alle tidligere eksempler, transport, fast ejendom, er værdien af, at genopfriske, som misligholder sine forpligtelser, hvilket betyder, at hver gang, der sker ændringer, af, forpremiere på højre vil ramme automatisk blive ladt., konstaterer, at hele den ramme og dens indhold er opdateret.hvis en indstilling, er der, postmessage, vil den straks ændre værdien af det, hver gang det ændringer, tvinger det nye indhold til forpremiere ramme, når de opstår., skabe en ny fastsættelse af id, wptuts [fod]: $wp_customize - > add_setting ('wptuts [fod] «, system ('default = > "copyright & en kopi, 2012 wptuts + «,'type = >" mulighed ",'transport = > postmessage')); $wp_customize - > add_control ('wptuts [fod.", system (»mærket« = >' fod indhold,'section = > wptuts'), så læg indholdet af denne indstilling til twentyeleven er fod.da dette emne er en aktion inden for det, blot tilføje en funktion til denne aktion:, funktion wptuts_footer() {$hjem = home_url(). $wptuts = get_option ('wptuts) $fod = $wptuts ['footer'], echo "< en href = ($hjem. > ($fod} < /a > < br />"} add_action ('twentyeleven_credits "," wptuts_footer), wptuts_footer, funktion vil trykke indhold, der indeholder en kredit forbindelse ved udgangen af webstedet.fordi, postmessage, arbejder på grundlag af javascript teknikker, er vi nødt til at gøre et skridt til at få det til at fungere ordentligt. tilføje under kode, lige efter tilsætning af kontrol af, wptuts [fod], hvori der., funktion wptuts_js_footer() {wp_enqueue_script ('wptuts er fod, plugins_url (' /j 'er /wptuts_theme_customizer er "., __file__) system (" skræddersy forpremiere ")} add_action (' customize_preview_init", "wptuts_js_footer), så læg følgende javascript i filen, js /wptuts_theme_customizer. js,: (funktion ($) (wp. bygge ('wptuts [fod] «, funktion (værdi) (værdi. bind (funktion (at) ($('&#stedet generator a.wptuts-credits). http: //())))))) (jquery), wp, er en javascript objekt, dets, vælge, method antager værdien af at id, wptuts [fod], og binder det værdi for indholdet af de matchede html element,&#stedet generator a.wptuts-credits, i dette tilfælde. se resultatet:,, output:,, forsøge at ændre nogen værdi, og den måde, postmessage, bygge - og anlægsarbejder.det kan ikke lade hele den første side, bare ændrer værdi umiddelbart af små stykker af side.,, tip:, hold øje med browser status bar eller adresse bar, når to af disse egenskaber, kan du se forskellen.udvidet komponent, du måske vidste, at kontrollen er, type, har en vis værdi som tekst, afkrydsningsfelt, radio, eller vælge, hjælper dig med at gøre passende form, indhold, men ikke dem alle, tage hensyn til vores behov.derfor udvider løbende kontrol at gøre yderligere arbejde er nødvendige. wordpress forsyninger nyttige, forlænget komponenter.nogle af dem er, farve og uploade billeder, former, f.eks.ved at genbruge de elementer, vi behøver ikke at føje mange eksterne ting at komplicere vores hjemmeside.de ved også, at for hver komponent i det tema, customizer er et objekt.disse udvidede komponenter, eftersom de er udvidet fra grundlæggende kategorier, farve, form, lad os skabe en ny indstilling til id, wptuts [farve]: $wp_customize - > add_setting ('wptuts [farve] «, system ('default = >�,'type "= >" mulighed ",'sanitize_callback = > sanitize_hex_color_no_hash,'sanitize_js_callback = > maybe_hash_hex_color"), husk at registrere en kontrol for den kontrol, der i dette tilfælde er der nogle forskelle fra alle tidligere: $wp_customize - > add_control (nye wp_customize_color_control ($wp_customize, wptuts [?] «, system (»mærket« = > farve,'section = > wptuts')), er der nogle vigtige ting at bemærke:,, wp_customize_color_control, klasse udvides fra, wp_customize_control,.det er mere specialiseret i arbejdet med at skabe en form for input med et farve - piller.selvfølgelig, det giver sin egen form element, så vi behøver ikke at angive værdien af den type, ejendom, som tidligere eksempler. den måde at bruge den, add_control, metode også ændringer.alle argumenter blev vedtaget som klasse er parameter (netop parametre for klasse er konstruktøren).desuden går det, wp_customize, variable som første parameter, måske allerede er bekendt med disse, herunder id, wptuts [farve] og vifte af ejendommens værdi par.,, sanitize_hex_color_no_hash, og maybe_hash_hex_color, er to vigtige sanitization funktioner ved hjælp af farve, form.den tidligere validerer oplysningerne skal være hexadecimal uden en hash, som vil blive reddet i databasen.dette sikrer produktion data skal valideres for javascript.,, se vores resultat:,, en anden ting at bemærke, er, at den værdi, wptuts [er], er hexadecimal uden en hash tegn, så når det, så husk at prepend en hash før outputting for at sikre, at det fungerer ordentligt, uploade. billeder, form, et meget nyttigt element er uploade image form, som forsyner os med evnen til at uploade billeder via ajax.vi er bare klik, vælger de billeder, - - og alt vil automatisk blive gjort, konfigurere fastsættelse: $wp_customize - > add_setting ('wptuts [uploade] «, system ('type = > "mulighed"), og den gruppe, vi bruger, er den, wp_customize_image_control, klasse: - wp_customize - > add_control (nye wp_customize_image_control ($wp_customize, wptuts [uploade] «, system (»mærket« = > "overføring",'section = > wptuts')), er det resultat, vi bliver:,, let at uploade og udvælge og forvalte uploadede billeder:,, lagret værdi af denne indstilling vil være vejen til de udvalgte image.kan du så komme ind i billedet og anvendelse, hvorhen du vil.,, konklusion af dette punkt, du har allerede lært meget af det grundlæggende tema customizer er komponenter, hvordan man skaber et nyt element, og selv at bygge det på din egen måde. igen, jeg sætter stor pris på alle tilbagemeldinger, bemærkninger, og selv unpleased ting, så lad mig det vide.tak for læse - og lykkelig kodning.,

digging-into-theme-customizer-part-4-practicing-1
digging-into-theme-customizer-part-4-practicing-2
digging-into-theme-customizer-part-4-practicing-3
digging-into-theme-customizer-part-4-practicing-4
digging-into-theme-customizer-part-4-practicing-5
digging-into-theme-customizer-part-4-practicing-6



Previous:
Next Page: