, den fuldstændige vejledning til wordpress indstillinger api, del 3: alle om menuer,,,,, 2,,,,,,,,, 25,,,,,,, det cyber - mandag envato tuts + kurser vil blive reduceret til kun 3 dollars.- og' t miss. denne post er en del af en serie kaldet den fuldstændige vejledning til wordpress indstillinger api. den fuldstændige vejledning til wordpress indstillinger api - del 2: afsnit, områder og settingsthe fuldstændige vejledning til wordpress indstillinger api, del 4: tema muligheder, på dette punkt. vi har lært, hvorfor de indstillinger api - ting, vi har lært om afsnit, områder og indstillinger, og vi har også nedsat en sandkasse tema, som vi bruger til at udvikle funktion, som vi udforske api. i denne artikel, vi skal se på, hvordan vi kan kommunikere med de wordpress menu system.det er vigtigt at bemærke, at dette ikke er en del af indstillingerne api, men det er så tæt forbundne, at vi bør sætte os med, hvordan vi bruger det, som vores emner og /eller plugins bliver mere kompliceret, har vi brug for at vide alle de forskellige måder, hvorpå vi kan inddrage dem i wordpress instrumentbræt.i denne artikel, skal vi tage et kig på de forskellige wordpress menu funktioner, når i skal bruge dem ved at undgå dem, og de situationer, som hver enkelt funktion egner sig bedst.,,, forståelse menu former, wordpress indeholder fire forskellige måder til at omfatte vores egen menu.nedenfor, vil vi se på hver enkelt menu, parametrene hver accepterer, og kode eksempler på, hvordan man bruger dem i projekter.vi sigter på at udvikle en klar forståelse af, hvordan de api fungerer, som det kan lægge et fundament for vores fremtidige arbejde., øverste menuer, menu sider henviser til menuen poster, som du kan se, når du første adgangskode til wordpress.det er de muligheder, der er til rådighed i venstre menu, som kan indeholde en liste over de to sider.,,, at indføre deres egen menu side i wordpress instrumentbræt, du bruger add_menu_page funktion. vi skal se på et praktisk eksempel på et øjeblik, men lad os først gennemgå funktion - det godkender syv argumenter (fem krævede to valgfri):,, side afsnit, henviser til den tekst, der er på toppen af browser vindue, når den øverste menu side vises.,, menu titel, er den tekst, der er anført i den faktiske menu.det er bedst at holde det lidt kort, ellers vil det få i menupunkt og ser lidt ud mod resten af menuen poster.,, kapacitet, henviser til, som brugerne har adgang til menuen.det er simpelthen en snor værdi, som udgør en af de disponible funktioner.,, menu kugle, er en entydig identifikator, som du giver.det peger på menuen i forbindelse med wordpress og henviser også til den side, der viser de muligheder, der er forbundet med den menu.det giver også en krog, som submenu poster, kan registrere sig.,, callback, er den funktion, der definerer indholdet anbringes på den side, der svarer til denne plan.det kan være i overensstemmelse med html eller henvise til en ekstern fil.,, ikon url, er vejen til ikon, at du vil have udvist ved siden af menupunkt i wordpress menu.du kan bruge en af wordpress eksisterende ikoner eller bruge et af dine egne.dette argument er fakultativ.,, position, definerer den position, hvor denne plan vil opholde sig i listen over wordpress "menu poster.ved misligholdelse, menuen er på bunden af menuen, men en speciel holdning vil placere deres menu over (eller under nogen af de eksisterende wordpress menu poster.,, lad os se på et eksempel.find functions.php i wordpress indstillinger sandkasse og tilføje følgende to funktioner:, funktion sandbox_create_menu_page() {} add_action ('admin_menu "," sandbox_create_menu_page); funktion sandbox_menu_page_display() {}, bemærke, at vi bruger admin_menu krog til at registrere vores menupunkt.denne særlige funktion brande lige efter den grundlæggende administration menu er på plads, så vil du registrere dit menu her, så wordpress gør det samtidig med resten af menuer. næste, lad os fælde de grundlæggende menupunkt.i holder i overensstemmelse med artikel tidligere i denne serie, her er hvad vi gør:,, tilføje en ny menu til bunden af wordpress menu, vi giver dem navnet på vores tema (det er, "sandkasse"), vil det være til rådighed for alle brugere, vil det ikke være et ikon, let nok, ikke?lad os gå videre og tilføje vores menu.igen, ikke blot kopiere og pasta til denne kodeks.læs det, bemærker de bemærkninger, og sørg for, at du forstår, hvad det er, vi laver:, funktion sandbox_create_menu_page() {add_menu_page ('sandbox muligheder, //titel, der skal anføres på den tilsvarende side i menuen'sandbox, //teksten fremlægges for det faktiske menupunkt'administrator, //der type af brugere kan se menuen'sandbox, //den unikke id - det er kuglen - for denne menupunkt'sandbox_menu_page_display, //navn på den funktion at ringe så menuen for side ');} //ende sandbox_create_menu_page add_action ('admin_menu "," sandbox_create_menu_page'); nu, genopfriske din wordpress administration menu, og du bør se en ny menupunkt.når du klik på det, skal du se en blank side ud. det er ikke særlig funktionelt.lad os slukke den callback funktion, definerede vi tidligere for at vise noget på skærmen:, funktion sandbox_menu_page_display() (//skabe en overskrift i misligholdelse wordpress »wrap« beholder $html = < div klasse = "pakke" > "$html. = < h2 > sandkasse < /h2 >" $html. = < /div > '; //sende tillægget til browseren echo $html;} //ende sandbox_menu_page_display, den endelige version af din kode skal se sådan her: /* * * føjer en ny maksimal menu til bunden af wordpress administration menu.* /funktion sandbox_create_menu_page() {add_menu_page ('sandbox muligheder, //titel, der skal anføres på den tilsvarende side i menuen'sandbox, //teksten fremlægges for det faktiske menupunkt'administrator, //type af brugere kan se menuen'sandbox, //den unikke id - den kugle - for denne menupunkt'sandbox_menu_page_display, //navn på den funktion at ringe så menuen for side ');} //ende sandbox_create_menu_page add_action ('admin_menu "," sandbox_create_menu_page) /* * * gør de grundlæggende udstilling af menuen side for det tema.* /funktion sandbox_menu_page_display() (//skabe en overskrift i misligholdelse wordpress »wrap« beholder $html = < div klasse = "pakke" > "$html. = < h2 > sandkasse < /h2 >" $html. = < /div > '; //sende tillægget til browseren echo $html;} //ende sandbox_menu_page_display, bortset fra, hvordan man bruger add_menu_page funktion, er måske den mest subtile tage væk, er, at der i wordpress hver menupunkt har en tilsvarende menu side.vi vil tage et kig på denne mere indgående i den serie, men det er vigtigt at bemærke, som vi begynder at undersøge hver enkelt af de forskellige typer af menuer., selv om det er meget ufuldstændige, kan vi tilføje til dette gennem resten af denne artikel og resten af ministeriet, en bemærkning om. positionering: mange entreprenører, overveje at bruge den position argument som dårlig etikette, som blander misligholdelse bruger erfaring med wordpress.hvis du desuden fastlægge en holdning og et andet tema, stik af, eller funktion, anvender den samme holdning, en af menuen punkter kan blive erstattet. submenus, submenus er ligesom menuer, med den undtagelse, at de tilhører en anden menu - de har en forælder.så du kan ikke skabe en submenu, uden at der skabes en menupunkt først.selvfølgelig, som vi så i den sidste artikel, submenu produkter kan indføres på eksisterende menu punkter - ikke bare skik menu punkter. i denne artikel, skal vi indføre en submenu side i vores egen skik menupunkt.men før vi gør det, lad os tage et kig på den add_submenu_page funktion og de parametre, der accepterer:,, forælder kugle, henviser til identifikation af de stiftende menupunkt, som denne submenu vil hører.i vores tilfælde, vil vi bruge menuen kugle, som vi som defineret ovenfor.,, side titel, er den tekst, der vil fremgå af browseren titel, når side er gjort.,, menu titel, er den tekst, der vil fremstå som den faktiske menupunkt i wordpress menu, kapacitet, som modervirksomheden menu, henviser til, hvilke typer brugere har adgang til denne særlige menu, menuen kugle, er den unikke identifikator for menupunkt.det er, hvad det er, der anvendes til at definere denne menu inden for rammerne af wordpress.,, callback, er den funktion, der er anvendt til at gøre denne menu er side til skærmen,.,, hvis du ønsker at tilføje en menupunkt med en af de eksisterende menuer, henviser til tabel i den foregående artikel. lad os start med at registrere et submenu for eksisterende menu ovenfor.vi ønsker at gøre følgende:,, registrere en submenu tilføjes til menuen, vi har skabt, vil det vise teksten "muligheder", vil det være til rådighed for alle brugere, vil det ikke være et ikon, tjek følgende kode - vi vil tilføje dette direkte under vores opfordring til at add_menu_page:, add_submenu_page ('sandbox, //register dette submenu med menuen som defineret ovenfor'sandbox muligheder, //teksten til skue i browseren, når denne menupunkt er aktiv'options, //teksten til denne menupunkt'administrator, //type af brugere kan se menuen'sandbox_options ", //den unikke id - kuglen - for denne menupunkt'sandbox_options_display" //den funktion, som anvendes til at gøre den menu til side til skærmen.;, glem ikke at definere den callback, selv om den er tom.det er, glem ikke at tilføje denne funktion til din fil (vi kan tilføje flere nu), funktion sandbox_options_display() {} //ende sandbox_options_display, når du opfriske din browser, du nu skal se, to, submenu punkter direkte under "sandkasse" menu.bemærker, at wordpress skaber en submenu punkt på dets egne - en submenu post, som svarer til menupunkt og denne funktion er fastlagt.den anden er den nye submenu mulighed, at vi bare er defineret, men det gør intet indhold., at ordne det, så lad os gå videre og indføre en grundlæggende side.ajourføring af submenu er callback - funktion til at se sådan ud:, funktion sandbox_options_display() (//skabe en overskrift i misligholdelse wordpress »wrap« beholder $html = < div klasse = "pakke" > "$html. = < h2 > sandkasse muligheder < ///////h2 >" $html. = < /div > '; //sende tillægget til browseren echo $html;} //ende sandbox_options_display, opfriske din browser igen, og du skal se en grundlæggende side titel, når du vælger de nye muligheder, submenu punkt på dagsordenen. selv om det ikke er nødvendigt at bemærke, at man rent faktisk kan få de stiftende menupunkt og muligheder, menupunkt henviser til samme indhold - blot ajourføre callback i ad_menu_page funktion til, sandbox_options_display, funktion, at vi bare er defineret, p.lugin sider, hvis du udvikler en wordpress stik af, så er der et par forskellige måder, at deres produkt kan kommunikere med platformen. specielt din stik af,,, kan arbejde i baggrunden og ikke kræve en menu, kan anvende begge dele, eller en af funktioner, der er nævnt ovenfor, at opbygge en skik menu, kan omfatter sig i en af de eksisterende wordpress menuer, for at gøre det lettere for stik af entreprenører, til også at omfatte deres muligheder i de eksisterende wordpress menuer, wordpress api tilbyder følgende funktioner: add_plugins_page. men vent.hvis du har fulgt med ovenstående eksempler, så du har formentlig bemærket, at der ikke synes at være nogen mærkbar forskel mellem add_plugins_page og add_submenu_page.du har ret.add_plugins_page tilbyder de samme funktioner som add_submenu_page, men der er to primære forskelle:,, stik af ydes specifikt til brug i stik af udvikling, den funktion, tilføjer plugins menu mulighed direkte til wordpress, plugins menuen.,, men du kan nok bruge add_submenu_page at nå de samme mål, og jeg er altid en fan af funktioner, som er bestemt til en specifik anvendelse, selv om der er en anden api - funktion, der gør det samme.når du gør det, du viser, at du bruger api som udviklere bestemt, og du gør din kode, en smule mere sammenhængende som din codebase er mere på linje med, hvordan det hænger sammen med de centrale platform, stik af udvikling er uden for rammerne af denne serie, men det er ikke helt irrelevant.selv om der ikke vil være nogen ændringer af vore sandkasse tema, jeg vil give et enkelt eksempel, der viser, hvordan man bruger denne særlige funktion. lad os gennemgå de argumenter, der add_plugins_page accepterer:,, side titel, er den tekst, der vil fremgå af browseren titel, når de stik af mulighed side er gjort., menuen titel, er den tekst, der anføres som stik af er menupunkt i wordpress menu, kapacitet, som de stiftende menu, henviser til, hvilke typer brugere har adgang til denne særlige menu, menuen kugle, er den unikke identifikator for menupunkt.det er, hvad det anvendes til at definere denne menu inden for rammerne af wordpress.,, callback, er den funktion, der er anvendt til at gøre denne menu er side til skærmen, her er et eksempel, der viser præcis, hvordan man bruger det.bemærk, at du kan tage det med i din functions.php akter, men det er ikke en del af sandkassen tema, som vi arbejder på, og som skal anvendes i forbindelse med et stik af, i stedet for. først fælde opkald til api funktion - meddelelse, at denne bruger admin_menu klo:, funktion sandbox_example_plugin_menu() {add_plugins_page ('sandbox stik af, //titel angives i browser vindue til denne side.'sandbox stik af, //teksten fremlægges for denne menupunkt'administrator, //type af brugere kan se menuen punkt'sandbox_plugin_options, //den unikke id - det er kuglen - for denne menupunkt'sandbox_plugin_display "//navn på den funktion at ringe, at side i denne plan);} //ende sandbox_example_plugin_menu add_action ('admin_menu", "sandbox_example_plugin_menu '), har den funktion, som vil gøre det stik af er display:, funktion sandbox_plugin_display() (//skabe en overskrift i misligholdelse wordpress »wrap« beholder $html = < div klasse =" pakke ">. $html. = < h2 > sandkasse stik af muligheder < /h2 >" $html. = < p - klassen = "beskrivelse" > der er currmåde ingen muligheder.det er bare for demo formål. < /p > $html. = < /div > '; //sende tillægget til browseren echo $html;} //ende sandbox_plugin_display, genopfriske din wordpress instrumentbræt, svæver over, plugins menuen og dig bemærk nye menupunkt.ikke dårligt, hva '?den endelige udgave af kodeksen skal se sådan ud: /* * * denne funktion indfører et fælles tema menu mulighed i wordpress "plugins" menu.* /funktion sandbox_example_plugin_menu() {add_plugins_page ('sandbox stik af, //titel angives i browser vindue til denne side.'sandbox stik af, //teksten fremlægges for denne menupunkt'administrator, //type af brugere kan se menuen punkt'sandbox_plugin_options, //den unikke id - det er kuglen - for denne menupunkt'sandbox_plugin_display "//navn på den funktion at ringe, at side i denne plan);} //ende sandbox_example_theme_menu add_action ('admin_menu", "sandbox_example_plugin_menu) /* * * gør en enkelt side udviser for temaet menu som defineret ovenfor.* /funktion sandbox_plugin_display() (//skabe en overskrift i misligholdelse wordpress »wrap« beholder $html = < div klasse = "pakke" > "$html. = < h2 > sandkasse stik af muligheder < /h2 >" $html. = < p - klassen = "beskrivelse" > i øjeblikket er der ingen muligheder.det er bare for demo formål. < /p > $html. = < /div > '; //sende tillægget til browseren echo $html;} //ende sandbox_plugin_display igen, denne funktion vil ikke være en del af vores sandkasse tema, fordi det er mere orienteret mod, stik af udviklingen, men det er værd at dække for dem af jer, der vil være at øge indstillinger api i din stik af udvikling, tema sider, som med plugins, wordpress giver en api - funktion til at indføre menuer specifikt om temaer.det er meget lig det stik af menuen funktion i, at det er endnu en metode til at indføre en submenu til eksisterende menuer.den primære forskel er, at de submenu tilføjes til, udseende, menu. som med stik af f.eks. tidligere i denne artikel, vil vi se på, hvordan vi kan bruge denne funktion, men vi vil ikke være med i vores sandkasse - tema.det er meningen, udelukkende for at vise, hvordan til at bruge den funktion, bare i tilfælde af, at du vælger at gå denne vej i deres personlige arbejde, først skal vi gennemgå de argumenter, der add_theme_page accepterer.du vil opdage, at de er ligesom dem, der kræves for stik af menuen og lignende til submenu funktioner, som vi har nævnt:, add_theme_page accepterer følgende argumenter:,, side titel, er den tekst, der vil fremgå af browseren titel, når emnet er mulighed side er gjort., menuen titel, er den tekst, der anføres som tema er menupunkt i wordpress menu, kapacitet, som de stiftende menu, henviser til, hvilke typer brugere har adgang til denne særlige menu, menuen kugle, er den unikke identifikator for menupunkt.det er, hvad det anvendes til at definere denne menu inden for rammerne af wordpress.,, callback, er den funktion, der er anvendt til at gøre denne menu er side til skærmen, som med de øvrige funktioner, vil vi skabe et par prøver at vise, hvordan fungerer dette indgå i deres projekt.bemærk, at opfordringen til at add_theme_page kan føjes til functions.php, og i modsætning til opfordringerne til at add_plugin_page, bør opholde sig her ved udviklingen af deres emne. for det første opfordring til at fælde den menupunkt:, funktion sandbox_example_theme_menu() {add_theme_page ('sandbox tema, //titel angives i browser vindue til denne side.'sandbox tema, //teksten fremlægges for denne menupunkt'administrator, //type af brugere kan se menuen punkt'sandbox_theme_options, //den unikke id - det er kuglen - for denne menupunkt'sandbox_theme_display "//navn på den funktion at ringe, at side i denne plan);} //ende sandbox_example_theme_menu add_action ('admin_menu", "sandbox_example_theme_menu), næste, vi skal fælde en funktion for at gøre mulighederne side:, funktion sandbox_theme_display() (//skabe en overskrift i misligholdelse wordpress »wrap« beholder $html = < div klasse =" pakke ">. $html. = < h2 > sandkasse tema muligheder < /h2 >" $html. = < p - klassen = "beskrivelse" > i øjeblikket er der ingen optimalons.det er bare for demo formål. < /p > $html. = < /div > '; //sende tillægget til browseren echo $html;} //ende sandbox_theme_display nu opfriske den wordpress instrumentbræt, svæver i, udseende, menu og du skulle se dit nye menupunkt.det er enkelt.den endelige udgave af kodeksen skal se sådan ud: /* * * denne funktion indfører et fælles tema menu mulighed i wordpress "udseende « * menu.* /funktion sandbox_example_theme_menu() {add_theme_page ('sandbox tema, //titel angives i browser vindue til denne side.'sandbox tema, //teksten fremlægges for denne menupunkt'administrator, //type af brugere kan se menuen punkt'sandbox_theme_options, //den unikke id - det er kuglen - for denne menupunkt'sandbox_theme_display "//navn på den funktion at ringe, at side i denne plan);} //ende sandbox_example_theme_menu add_action ('admin_menu", "sandbox_example_theme_menu) /* * * gør en enkelt side udviser for temaet menu som defineret ovenfor.* /funktion sandbox_theme_display() (//skabe en overskrift i misligholdelse wordpress »wrap« beholder $html = < div klasse = "pakke" > "$html. = < h2 > sandkasse tema muligheder < /h2 >" $html. = < p - klassen = "beskrivelse" > i øjeblikket er der ingen muligheder.det er bare for demo formål. < /p > $html. = < /div > '; //sende tillægget til browseren echo $html;} //ende sandbox_theme_display, til dem, der er interesseret i at gøre mere avancerede tema udvikling, du har sandsynligvis for de forskellige måder at gennemføre flere mulighed sider for du tema. på den ene side, kan vi tilføje flere submenus til et højt niveau af menuen, men der er et alternativ. tabbed navigation.det egner sig godt, når man ønsker at indføre alternativer til, udseende, menu og ikke tilføje endnu en menupunkt til wordpress instrumentbræt.vi vil drøfte dette nærmere i den næste artikel.,,, når i skal bruge hver funktion, har vi taget et kig på hver af de fire store muligheder for at indføre vores eget valg sider til wordpress.selv om disse funktioner er ikke specifikt del af indstillingerne api, er det vigtigt at diskutere, fordi de arbejder tæt sammen med det, men at disse funktioner er kun halvdelen af det.som en entreprenør, der er ansvarlig for integration og organiserede miljøer, det er vigtigt at vide, når i skal bruge hver af de forskellige funktioner i deres rette sammenhæng., selv om der er ingen sølvkugler svar for, hvornår de skal tage hver funktion, her er nogle retningslinjer for at tage i betragtning, når de arbejder på din brugerdefinerede funktioner, plugins og /eller tema:, højeste plan menuer, kan tilføjes, når der er submenu, der kan være logisk sammenbygget med disse muligheder.det egner sig til, når du har en stor samling af indstillinger, der ikke logisk set være i nogen af de eksisterende wordpress menuer.,, submenus, altid hører til en maksimal menu - enten sædvane eller allerede eksisterende.de skal altid være anført i de øverste menu er det mest logiske.hvis wordpress tilbyder en menu, som kan tjene som en forælder for din submenu, så brug den ikke forurene menuen med en overflødig på menuen.,, stik af menuer, bør anvendes, når du har enkle, én side muligheder for din stik af.hvis du har flere muligheder sider, overveje at oprette et højt niveau af menuen, eller overveje at bruge tabbed sejlads, som vi vil udforske den næste artikel.,, tema menuer, bør anvendes, når du er ved at udvikle deres eget tema, der tilbyder sine egne sædvaner muligheder.hvis de muligheder, kan leve på en enkelt side, overveje at bruge wordpress »api - funktion.hvis du har flere muligheder, overveje at bruge tabbed navigation.bemærker, at mange tema udviklere ofte ophøje deres tema muligheder i forhold til de øverste plan, og det er også i orden.,,, et ord om skik menuer:, selv om wordpress giver os mulighed for at tilføje vores øverste menuer, tilføje, at enhver eksisterende menu, og generelt giver os mulighed for at gøre, hvad vi vil med misligholdelse konfiguration, en del af fællesskabets vrede over dette.de mener, at skik funktionalitet bør ikke gribe ind i visse centrale menuer.men det er i sidste ende op til dig, gennemføre deres arbejde med omtanke - oddsene er, at nogle ting, som du gør, er vigtigere end wordpress centrale funktioner, så lad ikke dit arbejde over.,, hvad sker der nu?i den næste artikel, vi kommer til at anvende en del af det, vi har lært om menuer og begynde at indføre mulighed sider for vores sandkasse tema. ud over at tilføje menu sider, vil vi også se på tabbed sejlads, og hvordan vi kan gennemføre det at arbejde sammen med vores egen menu sider. i mellemtiden, revidere tidligere artikler i denne serie, og glem ikke at fjerne den nuværende version af wordpress indstillinger sandkasse på github.,, relaterede ressourcer, vi har dækket mange ressourcer i denne artikel.her er en oversigt over alt det, vi brugte:,, add_menu_page, add_submenu_page, add_plugins_page, add_theme_page, wordpress indstillinger sandkassen.