gaffel din wordpress taksonomi på den rigtige måde

, gaffel din wordpress taksonomi på den rigtige måde,,,,, andel,,,,,,,, 17,,,,,,,,,, det cyber - mandag envato tuts + kurser vil blive reduceret til $3.- og' t miss.,, skik og sædvane efter typer taxonomies har været en af de mest spændende nye tricks for wordpress developers siden offentliggørelsen i wordpress version 2.9.men med dem, kan blive et problem for selv de mest erfarne wordpress udviklere, uden at vide et par tricks.i denne artikel, vil jeg bruge 20 11 som et eksempel på, at du tips og tricks for at skabe deres egen taksonomi på den rigtige måde.,,, her er en oversigt over, hvad vi skal nå i dag.vi vil bruge en hypotetisk, for at illustrere nogle vigtige workarounds. du har måske ikke den samme situation, men planen bør gælde for mange taksonomi specifikke hovedpine som 404, sidenummerering problemer og ikke - søgbare taksonomi lister.,, trin 1: at skabe din brugerdefinerede efter type, trin 2: udvikling af vores produkt taxonomies, trin 3: lokalitet (sent) efter type og taxonomies, trin 4: at skabe taksonomi fil, løntrin 5: ring til søgning ved hjælp af pre_get_posts(), trin 1 skabe din brugerdefinerede efter type, for eksempel, vil vi skabe en sædvane efter type, for vores hypotetiske produkt opførelse på listen, og tænd din redaktør, og skabe en ny filen, efter type. php,. så redde fil til en ny folder kaldet ", omfatter".Here's the code that we'll be adding to that file:, function product_listing() { \t$labels = array( \t\t'name' => __('Property Listings', 'post type general name'), \t\t'singular_name' => __('Property Listing', 'post type singular name'), \t\t'add_new' => _x('Add New', 'Listing'), \t\t'add_new_item' => __('Add New Listing'), \t\t'edit_item' => __('Edit Listing'), \t\t'new_item' => __('New Listing'), \t\t'all_items' => __('All Listings'), \t\t'view_item' => __('View Listing'), \t\t'search_items' => __('Search Listings'), \t\t'not_found' => __('No Listings found'), \t\t'not_found_in_trash' => __('No Listings found in Trash'), \t\t'parent_item_colon' => '', \t\t'menu_name' => 'Listings' \t); \t \t$args = array( \t'labels = > $etiketter, offentligt = > sandt,'publicly_queryable = > sandt,'show_ui = > sandt,'show_in_menu = > sandt,'query_var = > sandt,'menu_position = > 4,'capability_type = > "post,'hierarchical = > falske,'has_archive = > sandt,'rewrite = > system (" patron "= > opførelse på listen, with_front = > falske) //vigtigt!'supports = > system ('title, redaktør, virksomhed beskrevet, forfatter "),'taxonomies = > system ('product_feature", "product_category)); register_post_type (" listen "$args)}, hvad vi gjorde. vi har skabt en funktion for en vare, der vil blive tilføjet til, lokalitet, foranstaltninger i wordpress senere.$etiketter, er et system, der indeholder alle de oplysninger, vi har brug for at oprette en post - type.næste under mærket er en række argumenter ($args,).det er vigtigt at huske på, er, om, hvor vi skal definere vores kugle, der vil blive anvendt som et permalink, for eksempel, vi bruger, opføres på listen.på bunden, vi har taksonomi argumenter, som indeholder vores, product_feature, og product_category,., en fælles metode, at masser af wordpress udviklere anvendelse er at udelukke sædvane efter type af søgningsresultater med argumentet om,'exclude_from_search = > sandt.det gør vi ikke her, fordi vi har brug for et arkiv for post - taksonomi, så folk kan gøre vores produkt.for mig er den regel er, ikke anvendelse,'exclude_from_search = > sandt, når registreringen af deres offentlige post - og, hvis du har brug for at vise det i et arkiv side, vil du have det med i søgninger.hvis vi ønskede at udelukke det fra blog ransagning, - - er vi nødt til at udelukke det med en speciel funktion tager vi senere.,, trin 2, at vores produkt taxonomies, som du kan se fra den kode, trin 1, er vi nødt til at registrere to skik taxonomies for vores produkt opførelse på listen.først vil vare ved og andet vil være produktkategori.så lad os komme i gang. vi er nødt til at tilføje en ny funktion efter product_listing funktion.vi vil kalde denne funktion, product_taxonomies,.den fuldstændige taxonomies kode kan ses nedenfor: /* * * tilføj skik taxonomies for produkt med angivelse af * /funktion product_taxonomies() {$etiketter = system ('name = > __ (produktegenskaber, taksonomi almindelige navn "),'singular_name = > __ (" produkt element "," taksonomi enestående navn "),'search_items = > __ (" søge produktets funktioner),'all_items = > __ ("alle produktets egenskaber"),'parent_item = > __ ("forælder produkt træk"),'parent_item_colon = > __ ("forælder produkt træk: '),'edit_item = > __ (" edit produkt træk "),'update_item = > __ (" ajourføring produkt træk "),'add_new_item = > __ (" tilføje nye produkt træk "),'new_item_name = > __ (nyt produkt træk"), erenu_name = > __ (produktegenskaber)); register_taxonomy ('product_feature, system ('listing) system ('labels = > $etiketter,'hierarchical = > sandt,'show_ui = > sandt,'rewrite = > system ("patron » = > product_feature"),'query_var = > sandt,'show_in_nav_menus = > sandt, offentligt = > sande) $etiketter = system ('name = > __ ("kategorier", "taksonomi almindelige navn"),'singluar_name = > __ (produktkategori, taksonomi enestående navn "),'search_items = > __ (efter produktkategori"),'all_items = > __ ('all produktkategorier "),'parent_item = > __ (nyt produkt kategori"),'parent_item_colon = > __ (nyt ellerct - kategori: "),'edit_item = > __ ('edit produktkategori"),'update_item = > __ ('update produktkategori "),'add_new_item = > __ ('add nye produktkategori"),'new_item_name = > __ (den nye produktkategori "),'menu_name » = > __ (produktkategorier«)); register_taxonomy ('product_category, system ('listing) system ('labels = > $etiketter,'hierarchical = > sandt,'show_ui = > sandt,'rewrite = > system (" kugle "= >" product_category "),'query_var = > sandt,'show_in_nav_menus = > sandt, offentligt = > sande)}, product_taxonomies, funktion, ovenfor, registre, to skik taxonomies for os.det er vigtigt at bemærke, er, at "omskrive 'argument er det samme som efter type omskrive vi skabt en sædvane kugle i trin 1.det vil blive en url til vores taksonomi arkiver.det næste, vi skabte også en offentlig diskussion, så folk kan kigge vores taxonomies.,, trin 3, lokalitet (sent) efter type og taxonomies, lad os bruge den add_actions filter til at lade wordpress udføre vores opgaver. add_action ('init "," product_listing, 0); add_action ('init "," product_taxonomies, 10), er opmærksomme på det sidste argument, som vi vedtager i den, add_action, filter.vi registrerer produkt med angivelse af post - med fokus på 0 og sædvane taxonomies for post - sig som 10.det er en afgørende ting at bemærke:, ikke registrere en skik taksonomi med en prioriteret lavere end prioritet til registrering af de dermed forbundne efter type.dette er det vigtigste spørgsmål, der kan give dig hovedpine; hvis taksonomi er prioritet er lavere end deres post - prioritet, det vil bryde siden default "10" vil blive anvendt til sædvane efter type, hvis du ikke angiver andet., lad os optage det i 20 11 funktioner.åbn den, functions.php og rulle til den sidste linje og tilføje denne kode nedenfor efter 20 11 organ klasse funktioner så emnet kan udføre vores post - kode, funktion twentyeleven_body_classes ($klasser (hvis (!is_multi_author()) ($klasser [] = 'eneste forfatter "} hvis (is_singular() & &!is_home() & &!is_page_template ("showcase. folkesundhedsprogrammet) & &!is_page_template ("sidebar page.php ') $klasser [] =" enestående "tilbagevenden $klasser;} add_filter (' body_class", "twentyeleven_body_classes) //- det er vores omfatter filer require_once (» /omfatter /post - typer. folkesundhedsprogrammet), åbn din wp administration og aktivere de 20 11 tema, hvis du ikke har gjort det, og du vil se din brugerdefinerede efter type og taksonomi er tilføjet under stillinger menu.,, løntrin 4 skabe taksonomi fil, her er det vigtige skridt, hvis du vil have din taksonomi, browse i stand.første eksemplar 20 11, archive.php, fil og omdøbe den til, taksonomi. folkesundhedsprogrammet.det, vi ønsker at gøre med vores "taxonomies" er meget lig det, wordpress gør med "arkiv. folkesundhedsprogrammet" og "category.php fil", og derfor er der ingen grund til at løbe en speciel forespørgsel om en taksonomi /kategori /post_tag arkiv side.,, note:,, hvad jeg ser mest wordpress tema udviklere? i dag er det. de lægger deres skik spørgsmål direkte til taksonomi fil, som ofte bryder sideantal.hvordan gør vi her?rolig, mine venner, vil jeg fortælle dig en hemmelighed for at gøre din brugerdefinerede spørgsmål uden at give den direkte til, taxonomy.php, fil: lad os fylde taksonomi fil med vores kodeks.gå til linje under get_header() og indtaste koden nedenfor. $sigt = get_term_by ("kugle", get_query_var ('"), get_query_var (" taksonomi "), get_term_by, funktion, vil vende tilbage til værdien af den kugle, vi fastsætter.husker du,'rewrite = > system ("patron" = > "property_feature)?det er værdien af den kugle, der vil være tilbage.vi vil bruge det til, at echo ud kuglen som taksonomi titel.gå nu til den linje, hvor h1 - tagfat med klasse side titel og skrive koden til udtrykket nedenfor. echo $term - > navn, test koden, gå tilbage til dit kontor - panel, så gå til produktkarakteristika og produktkategorier.vi vil skabe nogle karakteristika og kategorier for vores produkter.jeg ringer til min del 1, 2, 3 og i kategori 1, 2, 3, siden vi skabe en ny vare opførelse på listen.under offentliggjort inden du ser din del, og kategori skik taksonomi, som du har skabt.glem ikke at tjekke dem.jeg skabte 3 produkt lister, og så tjekker jeg kategori og kendetegn for hver af dem, for at se, hvordan din taksonomi arbejder, at produktet kendetegn eller produktkategori og rulle til den kategori, som du har skabt, og klik på knap så set på billedet ovenfor.hvis du er opmærksom på 404 fejl side, hoved ind i din wp admin, gå til miljøer - > permalinks og slog red til wordpress skylle omskrive regler.hvis du har noget, der svarer til det billede over din taksonomi allerede fungerer.,, får titlen på taksonomi under menu er udtrykket navn opfordrer vi med echo, lad os skabe en menu til lettere adgang til taksonomi arkiver.gå til menuen regning og skabe to menuer, vil vi sige, at den første menu "browse i træk", og den anden menu "browse af kategorierne".da vi har sat den parameter,'show_in_nav_menus = > sandt, vil det bringe vores skik taksonomi til menuen muligheder.vælge alle kendetegn for "browse i træk" menu og kategorier for "browse af kategorierne" menu, næste hoved til widgets område, og lad os tilføje menuer, vi har skabt for den skik menu widget.,, gå til jeres hjemmeside og genindlaes siden, vil du se din brugerdefinerede taksonomi widget.nu skaber mere indikation af en art produkt lister, så vi kan få de drikke ud.jeg har skabt ca. 8 - lister og har overdraget dem til del 1.- så sæt "blog sider viser højst" under indstillinger - > ved kun at vise, 3 stillinger, og gå til taksonomi arkiver side til at teste, om de virker eller ej, drikke.whallah!den sidenummerering fungerer fint i wordpress misligholdelse navigation. lad os prøve det med den berømte wordpress sidenummerering stik af, wp pagenavi, stik af.efter du installerede stik af, gå til dit, taxonomy.php, og finder den linje, twentyeleven_content_nav (nav ovenfor), og twentyeleven_content_nav (nav nedenfor), erstattes koden med, wp_pagenavi(), funktion, som det er set i den kode nedenfor. //twentyeleven_content_nav (nav) '); wp_pagenavi(); //twentyeleven_content_nav (nav nedenfor); wp_pagenavi(); nu genindlaes siden, og du kan se wp_pagenavi sidenummerering arbejder, hvis du følger mine instruktioner., medfører det ikke mere hovedpine, sidenummerering, mens permalink er ikke standard, er det næste skridt at skabe vores skik forespørgsel at lade taksonomi arkiver sagen viser, hvad vi beder om.,, løntrin 5 til søgning ved hjælp af pre_get_posts(), pre_get_posts(), filteret er påi den mest fantastiske filtre (efter min mening.det gør, at vi kan skabe et post - filteret før post er ringede.de fleste wordpress tema udviklere sjældent at bruge dette våben.okay, gutter!lad os lige vores hemmelige våben med koden.tænd din redaktør, og åbne den 20. 11 functions.php fil.vil vi lade det med to funktioner i slutningen af functions.php under vores required_once funktion, for det første at kalde vores skik spørgsmål om taksonomi, og den anden er at udelukke vores notering ransagning.her er koden for den første funktion. add_action ('pre_get_posts "," add_custom_taxonomy_query); funktion add_custom_taxonomy_query (& $søgning) (hvis (!is_admin() & & is_tax ('product_feature ')



Previous:
Next Page: