ved at kombinere wp_query med de vigtigste spørgsmål

, der kombinerer wp_query med de vigtigste spørgsmål,,,,, 33,,,,,,,,, 10,,,,,,, det cyber - mandag envato tuts + kurser vil blive reduceret til $3.- og' t miss. denne post er en del af en serie kaldet beherskelse af wp_query.mastering wp_query: 10 nyttige examplesmastering wp_user_query, så langt i denne serie, du har lært at bruge, wp_query, skabe skik forespørgsler til brug i din tema eller plugins., i de fleste tilfælde, de bruger, wp_query med en helt ny argumenter, som er adskilt fra det i de vigtigste spørgsmål, men hvad hvis du vil omfatte de vigtigste spørgsmål i deres argumenter?,, eksempler på, hvornår du ville gøre dette omfatter:,, til en kategori eller taksonomi side, der kun stillinger i en post -, kategori side viser, at stillinger med den nuværende kategori og en anden kategori eller et mærke eller taksonomi, sigt på en side i en post - type, der med visse stillinger metadata, jeg kunne gå på der er masser af muligheder for at kombinere de vigtigste spørgsmål med deres egen skik forespørgsel.,, jeg vil demonstrere det med tre eksempler: den første vil være et simpelt eksempel med en løkke; den anden vil anvende de, til produktion af flere loops, en for hver post - type, og den tredje vil produktionen to post - typer på en kategori   arkiv ved hjælp af to særskilte spørgsmål., med hensyn til fastlæggelsen af en variabel baseret på de vigtigste spørgsmål, dogdu kommer til at kombinere deres vigtigste spørgsmål med, wp_query,, du er nødt til at opbevare de aktuelle spørgsmål genstand på en måde, der gør det let at bruge i din, wp_query, argumenter.den letteste måde at gøre det på er ved at tildele den til en variabel,.,, hvis du gør det her, før at definere deres, wp_query, argumenter, som så:,, $mainquery = get_queried_object();,,, get_queried_object(), funktion, returnerer den for øjeblikket spurgt objekt, hvad det end måtte være.en enkelt post, det vil bare tilbage efter formål, mens et arkiv, det vil vende tilbage til den kategori, øremærke, sigt objekt, eller hvad   genstand vedrører arkiv.det giver id af bestred objekt.,, du kan bruge det, $mainquery, variabel i din, wp_query, argumenter.lad os tage et kig på nogle eksempler.,, f.eks. 1: viser kun stillinger i én post type på kategori side, lad os sige, at din lokalitet er en speciel post - lægges til det og du har gjort det muligt for kategorier for denne skik efter type.for kategori arkiv for hver kategori, vil du ikke vise stillinger: i stedet, vil du vise stillinger i din nye post - lad os kalde det produkt,.,, din forespørgsel kan se noget lignende:,, <?php $mainquery = get_queried_object(). $args = system ('category_name = > $mainquery - > kugle, post_type = >' produkt '); //skik forespørgsel.$forespørgsel = nye wp_query ($args); //se, at vi har spørgsmål resultater.hvis ($forespørgsel - > have_posts()) (//start, skruet i forespørgslen resultater.mens ($forespørgsel - > have_posts()) ($forespørgsel - > the_post(); //indhold af spurgt efter resultater her.}} //genoprette oprindelige post - data.wp_reset_postdata();?>,, fordi det, category_name parameter, jeg har brugt over tager kategori kugle som sit argument, er du nødt til at tilføje - > kugle, efter den variabel produktion kategori kugle.,, det giver dig en forespørgsel, som henter stillinger af produkt, efter type af databasen med den i øjeblikket ved kategori.du ville bruge den på, category.php, side model.,, note: du også kunne nå frem til dette resultat ved, pre_get_posts, krog til at ændre de vigtigste spørgsmål, kombineret med en betinget funktion for at tjekke for kategori arkiver.,,. eksempel 2: at kombinere de vigtigste spørgsmål med wp_query og for hvert output flere løkker,,, det næste eksempel vil produktionen af alle stillinger i den nuværende kategori side, men i stedet for at vise dem alle i én blok, den vil adskille dem fra post -., betyder dette, at man kan løse deres post - typer, til blokke eller kolonner på din side af css eller bare skille dem ud i forskellige lister.,, gør det, du ville bruge følgende kode:,, <?php $mainquery = get_queried_object(). $post_types = get_post_types(); for hvert ($post_types som $post_type) ($args = system ('category_name = > $mainquery - > kugle, post_type = > $post_type); //skik forespørgsel.$forespørgsel = nye wp_query ($args); //se, at vi har spørgsmål resultater.hvis ($forespørgsel - > have_posts()) (//start, skruet i forespørgslen resultater.mens ($forespørgsel - > have_posts()) ($forespørgsel - > the_post(); //indhold af spurgt efter resultater her.}} //genoprette oprindelige post - data.wp_reset_postdata();}?>,, det bruger $mainquery, variable   vi brugte før, men det er ligeledes en $post_types, variable opbevarer alle post - typer er registreret på stedet, og en $post_type, variable opbevarer hver enkelt post - igen., 3: to særskilte spørgsmål, f.eks. for to post - typer, det sidste eksempel er magen til den anden, men adskiller sig efter typer i to separate spørgsmål, hver med sin egen særskilte loop.det giver dig kontrol over, hvad der er udvist for hver, så du kunne vise stillinger forskelligt fra produkter, måske også en var image for produkter, eller at give dem et andet layout.,, lad os sige din hjemmeside er, produkt, efter type, der er indregistreret, med kategorier mulighed for det, og du er også skrive blog med de samme kategorier.for hver kategori arkiv side, du vil se de seneste ti stillinger, og så vil du have en liste over alle produkter i samme kategori.,, til at gøre dette, vil de bruge noget som denne kode:,, <?php $mainquery = get_queried_object(); //første forespørgsel argumenter for stillinger.$args = system ('category_name = > $mainquery - > kugle, post_type = > "post", "posts_per_page = > 10); //skik forespørgsel.$forespørgsel = nye wp_query ($args); //se, at vi har spørgsmål resultater.hvis ($forespørgsel - > have_posts()) (//start, skruet i forespørgslen resultater.mens ($forespørgsel - > have_posts()) ($forespørgsel - > the_post(); //indhold af spurgt efter resultater her.}} //genoprette oprindelige post - data.wp_reset_postdata(); //anden forespørgsel argumenter for produkter.$args = system ('category_name = > $mainquery - > kugle, post_type = > »produkt«, posts_per_page = > - 1); //skik forespørgsel.$forespørgsel = nye wp_query ($args); //se, at vi har spørgsmål resultater.hvis ($forespørgsel - > have_posts()) (//start, skruet i forespørgslen resultater.mens ($forespørgsel - > have_posts()) ($forespørgsel - > the_post(); //indhold af spurgt efter resultater her.}} //genoprette oprindelige post - data.wp_reset_postdata();?>, ville du så skrive hver sløjfe anderledes til produktionen, forskellige data for hver post -.,, sammendrag, som du kan se fra de ovenstående eksempler, er det muligt at anvende, wp_query, ikke blot for at skabe fuldstændig adskilt fra det primære spørgsmål. spørgsmål, men også at indarbejde den i øjeblikket ved objekt og skabe mere magtfulde forespørgsler om arkiv sider. eksemplerne ovenfor, kan også ske med andre arkiv typer: for taxonomies, forfattere, datoer og mere.se, om du kan komme op med flere muligheder.,



Previous:
Next Page: