input, wordpress tot API, complete gids - Deel 7: verificatie, ontsmetting, en input - ik,,,,,,,,,,,, deel 7,,,,,,, de delen van het netwerk, Maandag wat in training + - programma zal worden beperkt tot slechts drie dollar.Niet' niet missen, een deel van de prijs van een reeks genaamd - die volledig voor je. Dat is een complete gids wordpress API - Deel 6: richtsnoeren voor de integriteit van de pagina 's menu wordpress tot API, - Deel 8: verificatie, ontsmetting, en input - II, als je nu gewoon In ons, we hebben vele thema' s in deze reeks – hebben we geprobeerd om een volledig overzicht van de taken in verband met de API - en wordpress geregeld.We hebben besproken, opties, navigatie en menu 's.We zijn in de door de concrete voorbeelden te bespreken hadden we het al over elk onderwerp, we zijn bijna klaar.In de twee laatste reeks artikelen, we moeten naar de ontsmetting, een verificatie, en de informatie - elementen, kunnen we gebruik maken van onze wordpress « en thema 's, voor we beginnen, in de veronderstelling dat je langs, al de rest is de code van het monster van de serie, de installatie van werk en Nu bekend is, een kopie van de API - en de keuze van de onderwerpen.Als je op een van de onzekere, adviseer ik de lezing van de artikelen in de rest van dit standpunt in, verificatie en gezondheid. En begrijpen, we beginnen met de opstelling van een code in, we moeten weten wat het is, we gaan om – dat wil zeggen de verificatie en de hygiëne.Simpel gezegd, deze is veilig en de optie schrijven wordpress blz.: gegevens en de onderliggende database van twee aspecten. Moeten we dieper duiken op in dit zien we elke input - en voorbeelden, maar we geven een context, zijn we eigenlijk moeten doen:,, validatie, is onze gegevens uit studies van optie blz. – of, integendeel, de inbreng van gebruikers – te bepalen of het redden van dit aanvaardbaar is.,, ontsmetting, is ervoor te zorgen dat de gegevens uit de database van het proces, we zijn schoon en correct in de pagina 's maken, misschien wel de meest beknopte samenvatting, verificatie van de gegevens in de gegevensbank worden geschreven in afwachting van de voltooiing vanSelenium en ontsmetten moeten lezen van de gegevens uit de databank en stuur het naar de browser, gewoonlijk is de opslag van gegevens en documentatie, verificatie van de verwerking van de gegevens relevant zijn, maar het is ook mogelijk na de gegevens heeft gevalideerd om ervoor te zorgen dat alleen schoon gegevens worden opgeslagen in de databank.Als we met onze eigen code werkt, doet dit soort dingen gemakkelijk is, maar we kunnen niet altijd afhankelijk zijn van andere ontwikkelaars ontsmetting van hun gegevens, alle gegevens uit de databank van de verantwoordelijkheid op ons. En, de vernieuwing van onze projecten, zodat de volledige ontsmetting en verificatie van een oplossing, en wij zijn de invoering van een nieuwe in de etikettering van onze opties blz.Als je een nieuwe top moeten we de menu 's, dit is de toevoeging van een nieuwe sub - menu' s, en actualisering van de mogelijkheid een rekening.Laten we nu voor zorgen, ten eerste, de locatie, sandbox_example_theme_menu, de functie en de toevoeging van het volgende menu:, add_submenu_page ('sandbox_theme_menu ", input, bijvoorbeeld in de zaak,'administrator",'sandbox_theme_input_examples ", create_function (nul," sandbox_theme_display ("input_examples"); "); en dan moeten we zoeken naar Een een functie zal creëren we nieuwe opties - rekening.Als je altijd met de reeks, het moet makkelijk zijn om te volgen, sandbox_theme_initialize_input_examples (functie) (als (valse = = = = = = = get_option ("sandbox_theme_input_examples") (") (add_option sandbox_theme_input_examples"); //////////////}} sandbox_theme_initialize_input_examples als einde van add_action ("admin_init", ", de laatste sandbox_theme_initialize_input_examples); we moeten worden bijgewerkt, de functie, sandbox_theme_display, waardoor de rekening en de keuze van de juiste tijd toegang door middel van etikettering of sub menu 's.Ten eerste, laten we de actualisering en de vraag wat de parameters van de functie.In het bijzonder geval van de inbreng van de behandeling nodig, bijvoorbeeld.Deze vernieuwing is de voorwaarde: als lid is ($_get [label])) {% active_tab = $_get etiket} []; anders als ($active_tab = = "social_options") {% active_tab = "social_options";} anders als ($active_tab = = "input_examples") {% active_tab = "input_examples";} {% active_tab = "of display_options"; ////////andere) als de volgende stap moeten we nog een nieuw etiket navigatie.Actualisering van de navigatie - etikettering, verpakking, recipiënt, met inbegrip van de nieuwe presentator, < href = "?Bladzijde = sandbox_theme_options & - = input_examples "=" navigatie rekening <?PHP ECHO $active_tab = = "input_examples"? "Etikettering: "- initiatief;?> > input "voorbeeld < /> en, ten slotte, moeten we nog een voorwaarde voor de vorm van elementen aangegeven opties.Deze vernieuwing is de voorwaarde: als ($active_tab = = "display_options") {settings_fields ("sandbox_theme_display_options"); do_settings_sections ("sandbox_theme_display_options");} elseif (= = "social_options active_tab dollar") {settings_fields ("sandbox_theme_social_options"); do_settings_sections ("sandbox_theme_social_options"); de andere ('} {settings_fields sandbox_theme_input_examples "); do_settings_sections (" sandbox_theme_input_examples ")) ////////; als andere, in de veronderstelling dat je al met al de code klopt, je het paneel nu eruit moet zien:,, we nu klaar om te beginnen met de invoering van nieuwe elementen en de verificatie van opties en ontsmetting.Als de code niet duidelijk is, moet het in de reeks die na de inspectie, menu 's, en de etikettering zijn gedekt.,, het element vormen, zijn er vijf fundamentele elementen vormen, kunnen we gebruik maken van onze wordpress input.Deze tekst is in de regio 's, vakje, de knop, de selectie van de doos.In de rest van dit artikel, we zullen kijken naar de elementen en de tekst invoeren, zullen we een terugblik op de afgelopen drie jaar in het laatste artikel van deze reeks, input -, output - elementen, moeten we vangen een tekst van een gebruiker is de situatie ideaal.Dat is hun naam of telefoonnummer of een gecompliceerde dingen, zoals een website, van hun e - mailadres, of een ADI van de sleutel.In feite, als we de eisen van de gebruikers van sociale netwerken... Adres, we hebben bij het gebruik van input - gebied, dat in de tekst is een complexe operatie, met name als je wil de uitvoering van bepaalde beperkingen.Bijvoorbeeld, gevolgd door een specifieke vorm van nummer, als je de vraag van de gebruiker voor hem /haar nummer, dan kun je een functie van het telefoonnummer aandringen op strikte vorm.Natuurlijk, we kunnen vangen van alle gevallen in dit voorbeeld, omdat het een gebied is volledig, integendeel, we zullen doen, is ervoor zorgen dat geen kwaadwillige code is geschreven in de database.Dit betekent dat wanneer de gebruiker van de tekst in de tekst, we verwijderen alle potentiële problemen: //europa.eu.int /comm /etiket en kenmerken.Maar daarvoor, laten we de invoering van een nieuwe optie, te weten de etikettering, en zien wat er gebeurt, als we niet de uitvoering van elke vorm van controle door de invoering van nieuwe deel, en het gebruik van ter plaatse, sandbox_theme_initialize_input_examples. Functie:, add_settings_section ('input_examples_section ", het voorbeeld input,'sandbox_input_examples_callback",'sandbox_theme_input_examples add_settings_field ("); een input - eenheid in'sandbox_theme_input_examples,'sandbox_input_element_callback", ",'input_examples_section"); register_setting ('sandbox_theme_input_examples ",'sandbox_theme_input_examples"); de komende deel van de definitie van de functie van,,, sandbox_input_exa terug:Mples_callback () {ECHO "< p> biedt vijf fundamentele elementen van type voorbeeld. < /P >";}, eindelijk, we gebruiken om de inbreng van de feitelijke elementen van de functie van input, sandbox_input_element_callback () {% opties = get_option ("; ///////sandbox_theme_input_examples"). De ECHO - < input vormen voor de tekst "=" input_example "naam" sandbox_theme_input_examples [input_example] "waarde".De keuze van de input_example] [dollar. "/> ";}, je opties nu lijkt op de foto hieronder:,, de etikettering van begrip, tot op dit punt, we hebben ons gekozen elementen en ik zei dat we uiteindelijk over de verschillende eigenschappen van de reeks in de toekomst.Dit artikel is in het begin van ons zien, de identiteit, de betekenis, de naam, de eigenschap, dat aan het begin van de functie, lezen we dat deze specifieke etikettering wordpress, get_option opties.Deze functie is een reeks opties.De inbreng van de identificatie van de eigenschappen van de identificatie van het element element in de reeks waarden.De naam, de eigenschappen, de netwerken en de Bond van ID 's naam van betekenis is?Is voltooid, dat, op basis van wordpress zal creëren, een deel van de definitie van de installatie, de naam van je.In dit geval is de sandbox_theme_input_examples, elk element wordt door, identificatie, attributen.In dit geval, het is ", input_example," kan je lezen, de waarde van dit pakket, input_example sandbox_theme_input_examples [], de elementen, id, dus, dat de sleutel van de waarde in een scala van mogelijkheden, de naam, de aard van de waarden in de reeks belangrijke vertegenwoordigers van de installatie, de naam van de validatie en ontsmetting, in het een beetje, het volledig kan beginnen met de waarde van de elementen en het behoud van de inbreng van de opties.Verder te gaan en het proberen, wordt een waarde op de "veranderingen", en moet je zien in de elementen waaruit blijkt dat je net een waarde.Maar de vraag is: als dit proberen pasta in de input - gebied:, < iframe src = "http://wp.tutsplus.com breedte = 640 hoogte ='480" > < /iframe > de volgende stap, springen, index.php, en wordt de volgende code:,, LT.???????PHP input_examples dollar = get_option ('sandbox_theme_input_examples ");?> <?PHP ECHO $input_examples ['input_example];?>, op de pagina, dat moet je zien in je een iframe thema 's:,, lijkt een relatief kleine problemen, maar dit is precies het soort dingen die we nodig hebben om te voorkomen dat.We willen niet dat de gebruikers van de gegevensbank, website, enz. Met de controle.Natuurlijk, het is een klein voorbeeld van de iframe – als de gebruikers kan worden opgenomen in een javascript, dan kunnen ze je hele website van bepaalde aspecten.Nog ernstiger is, als de gebruikers kan worden opgenomen in de database van kwaadwillige, je kan een compromis is, dus laten we het controleren.Zoals hierboven vermeld, moeten we het schrappen van een markering en is er de kwestie van de personages.Om dit te bereiken, moeten wij in de eerste plaats de definitie van een verificatie - elementen voor de inbreng van onze afdeling.Om dit te doen, laten we de herziening en actualisering van het beroep, register_setting, ziet het er zo uit:, register_setting ('sandbox_theme_input_examples ",'sandbox_theme_input_examples",'sandbox_theme_validate_input_examples "); de volgende definitie van,, laten we de functie, en sandbox_theme_validate_input_examples ($input) {///////sandbox_theme_validate_input_examples aandacht aan Het einde van deze functie, en aanvaarding van een enkele parameters. We noemen, input.Dit argument is. Het is deze optie sturen we bewaren de optie van pagina 's, de verificatie.Ook op dat we een extra optie elementen, zullen we dezelfde functie, het creëren van een verificatie van de volgende functies meestal drie stappen: het creëren van een reeks opties, zal worden gebruikt voor de opslag van controle, verificatie en schoon, en, in voorkomend geval, van alle inkomende opties), de terugkeer van de netwerken creëren we, laten we doe het nu.Kijk onder de aandacht naar de uitvoering van de opmerkingen, sandbox_theme_validate_input_examples ($input: de functie van het creëren van netwerken) {///////opslag van produktie - of opties () = dollar; ///////verkeer door middel van elke input - opties voor (dollar enter = > de dollar in waarde) {///////van de waarde van de optie zien.Als dat zo is, het aan.Als lid is ($dollar belangrijke input [])) {///////PHP en met alle: //europa.eu.int /comm /en naar behoren aan de produktie van essentieel belang. [] USD = strip_tags (stripslashes ($dollar belangrijke input []) //////////////.}}) als einde voor /terug - door deze actie met een extra beloning apply_filters filter functie ("sandbox_theme_validate_input_examples dollar input en output);}, de meeste van de code is relatief eenvoudig, maar de twee belangrijkste aspecten van de toestand in en om terug te keren naar de verklaring die We gebruiken, strip_tags.,,, de functie, het is deze machine PHP, het verwijderen van alle: //europa.eu.int /comm /PHP en etikettering. We gebruiken, stripslashes, de functie, het is een PHP functie zal optreden,Het begin van de behandeling, de laatste aanhalingstekens rond de touwtjes in handen.,, kunnen we gewoon terug in de functie van de dollar, en aan het einde van de reeks Terug bellen, maar de apply_filters, is een van de beste praktijken.Maar het valt buiten het bestek van dit document, maar feit is dat deze verklaring die deze functie in de waarde van een andere functie voor worden gefilterd, probeer nu een voorbeeld opgenomen in de input - element.Gewoon een touw, een telefoon, e - mail, URL: //europa.eu.int /comm /, een stuk, een javascript, wacht.Netjes, hè?Tot slot, laten we de herziening, index.php en het verstrekken van een laatste veranderen over hoe we de uitvoering van de produktie.Weet je nog, dat is een goede praktijk, van de waarde van de optie, zelfs als je niet van je werk, de positie, de woorden:, <?PHP ECHO $input_examples [input_example];?> en bijwerking van gegevens: het zo, <?PHP ECHO sanitize_text_field ($input_examples [input_example "]);?>,, sanitize_text_field, is de functie van een andere wordpress eigen functie, is specifiek voor het filteren van de gebruiker in de tekst van de database of gebied uit de database, en we zullen in dit artikel, is de volgende stap, maar deze functie in de Codex voorziet in een volledige wordpress beursgenoteerde, tekst, kijkt. In de input - elementen, we dekken. Veel, op de grond.Gelukkig veel dezelfde beginselen zijn van toepassing op niet alleen de regio 's en de rest van de tekst, en de elementen.Daarom moeten wij niet zoveel tijd en de elementen.Dat laten we kijken wat voor elk element van de kenmerken en type, nu, laten we de invoering van een textarea elementen.In ons geval, het bijzondere elementen kan de gebruiker in een paar zinnen over jezelf, is van mening dat het een korte leven.Ten eerste, het volgende toevoegen: telefoon, sandbox_theme_initialize_input_examples, functie, add_settings_field ('textarea element,'textarea element,'sandbox_textarea_element_callback ",'sandbox_theme_input_examples",'input_examples_section "); en nu, laten we de tekst de nodige call - back - definitie:, sandbox_textarea_element_callback () {% opties = get_option (" sandbox_theme_input_examples "), waardoor de produktie van ECHO; ///////< de tekst id =" textarea_example "naam" sandbox_theme_input_examples [textarea_example] "=" 5 "als" 50 ">".De keuze van de textarea_example] [dollar. "< /tekst > ";}, dat de uitvoering van de definitie van de input elementen noemen die vergelijkbaar zijn.We hebben een, het logo en de eigenschap om deze waarde in de optie - sleutels, en we hebben een naam, eigendom van de gespecificeerde elementen van de exacte naam en sleutels.We geven ook de specifieke omvang, maar dit is puur willekeurig, weet je nog, omdat deze elementen behoren tot dezelfde afdeling als input onderdelen, het gebruik van dezelfde functie te valideren.Dus, we hebben hetzelfde niveau controle vrij.- mark, SCRIPT proberen probeerde te redden en andere vormen van gebruik van deze code, tot slot, we hebben een update van de thema 's voor het publiek van de waarde van het herstel van de pagina' s, dat de juiste ontsmetten.In de index. Php, wordt de volgende code:, <?PHP als ($input_examples [textarea_example]) {?> <?PHP ECHO sanitize_text_field ($input_examples [textarea_example "]);?> <?} ///////als?> dit is bijna hetzelfde, hoewel de input - gebied, moeten we ervoor zorgen dat we de voltooiing van de verificatie en de gezondheid van onze conclusies.,,, hoewel we alleen kijken naar de twee soorten elementen, we zijn op veel plaatsen.Behalve onze betreft de laatste, we ook de verificatie van de verwezenlijking van de fundamentele, begonnen onderzoek naar de functie van de ontsmetting van je, op het einde, we zullen de resterende drie soorten zien, hoe ze het gebruik van controle en beheer van gezondheidszorg.In de tussentijd, wat we hier ook bij de bron in dit verband in de herziening van de desbetreffende artikelen op de bodem van de experimentele.,, de relevante bronnen, en de validering van de gegevens get_option wordpress,,,,,,,,,, stripslashes strip_tags, apply_filters sanitize_text_field,,,,
Een complete Gids voor wordpress API - Deel 7: verificatie, ontsmetting, en ik
Previous:En hoe je de
Next Page:Een snelle Hint: visuele redacteur