Mastering WP_Query Serie Finale

Välkommen till slutet av serien "Mastering WP_Query". Det har varit en lång resa - det här var en av de längsta serierna i Tuts + historia. Rachel och jag är oerhört stolta över att vara de två författarna av detta WP_Query referens.

Vi hoppas att du njöt av turen. I den här sista delen kommer vi att gå igenom det vi lärde oss och stänga gardinerna.

Del 1: En introduktion

Detta var introduktionen till serien av Rachel. I denna del lärde vi oss:

  • Vad WP_Query är enkelt och enkelt
  • varför ska vi använda WP_Query, och varför vi borde använda den över andra metoder för att skapa egna frågor
  • "caveats" av WP_Query som vi borde veta om

Del 2: Använda loop med WP_Query

Den andra delen handlade om att skapa en slinga med WP_Query klass, också skrivet av Rachel. I denna del lärde vi oss:

  • vilken "WordPress loop" är och var den används
  • Det sätt på vilket WordPress-loopar är strukturerade (med ett välskrivet, detaljerat exempel)
  • kör extra loopar med WP_Query klass

Del 3: Relaterade funktioner

I denna del, skrivet av er verkligen, gick vi över 13 funktioner som interagerar med WP_Query, vilket gör det lättare att arbeta med det. Funktionerna var:

  • get_query_var (), som får offentliga sökvariabler
  • query_posts (), vilket ändrar huvudslingan och är en dålig, mycket dålig funktion
  • get_post (), som får en enkel post att arbeta med
  • get_posts (), som får inlägg och returnerar dem i en array
  • get_pages (), vilket får sidor på samma sätt
  • have_posts (), vilket är en villkorlig etikett som returnerar SANN om det finns inlägg som returneras i frågan
  • stolpen(), vilket vrider kuggarna i slingan
  • setup_postdata (), som sätter upp den globala $ post variabel
  • rewind_posts (), vilken rensar den aktuella slingan
  • wp_reset_postdata (), som återställer det globala $ post variabel
  • wp_reset_query (), som återställer hela frågan
  • is_main_query (), som kontrollerar om den aktuella frågan är huvudfrågan (och är en annan villkorlig etikett)
  • i slingan(), som kontrollerar om vi är i slingan (och är ännu ett villkorat tag)

Del 4: Relaterade filter och åtgärder

Den här delen som jag skrev var både irriterande och givande att skriva om. Det var irriterande eftersom det tog väldigt mer forskningstid, men det var väldigt givande för, ja, jag lärde mig så mycket. (Pro-lärande tips: Skriv en handledning om ett ämne som du inte vet lite om!)

Varje WP_Query-relaterat filter var (på något sätt) om de SQL-kommandon som kör frågan - de flesta av dem filtrerar de olika klausulerna som BEGRÄNSA, VAR eller DISTINKT. De tre åtgärderna å andra sidan tjänar olika syften:

  • De pre_get_posts åtgärden påverkar frågan innan det körs.
  • De parse_query åtgärden hanterar analysen av frågan.
  • De stolpen åtgärden ändrar postobjektet.

Del 5: Egenskaper och metoder

I den här delen som jag skrev gick vi över egenskaperna och metoderna hos WP_Query klass. ("Egenskaper" och "metoder" är bara "variabler" och "funktioner" i en PHP-klass.) Egenskaperna (variabler) vi lärde oss om var:

  • $ query
  • $ query_vars
  • $ queried_object
  • $ queried_object_id
  • $ inlägg
  • $ POST_COUNT
  • $ found_posts
  • $ max_num_pages
  • $ current_post
  • $ post
  • 25 egenskaper som börjar med $ Is_, som fungerar som villkorliga etiketter

Och metoderna (funktionerna) var:

  • i det()
  • parse_query ()
  • parse_query_vars ()
  • skaffa sig()
  • uppsättning()
  • & get_posts ()
  • next_post ()
  • stolpen()
  • have_posts ()
  • rewind_posts ()
  • &fråga()
  • get_queried_object ()
  • get_queried_object_id ()

Delar 6 till 12: Argument från WP_Query-klassen

I de kommande sju delarna gjorde Rachel ett fantastiskt jobb som förklarar alla de argument som vi kan använda med WP_Query klass, med små exempel:

  • Del 6: Argument-Sidor, Inlägg och Posttyper
  • Del 7: Argument-Kategorier & Taggar
  • Del 8: Argument-Taxonomier
  • Del 9: Argument-Anpassade fält
  • Del 10: Argument-Datum
  • Del 11: Argument-poststatus, pagination och beställning
  • Del 12: Argument-Författare, Sök, Lösenord, Tillstånd, Caching och Returfält

Del 13: 10 Användbara exempel på WP_Query

I denna del tog jag mig friheten att gå igenom olika exempel med hjälp av WP_Query klass och dess relaterade funktioner. (Jag gav också ett snabbt exempel för att påminna dig hur man skapar en slinga med WP_Query.) Exemplen gällde:

  1. notering av författarens inlägg under det aktuella året
  2. skapa en "Senaste inlägg från den här kategorin" som utesluter det aktuella inlägget
  3. bygga en lista "Mest populära inlägg", beställd efter kommentarräkning
  4. skapa en enkel skjutreglage
  5. visar ett slumpmässigt citat i sidofältet
  6. listar produkter mellan ett prisklass
  7. bygga en kortnummer för att visa ett inlägg i ett inlägg
  8. lista aktuella schemalagda inlägg (med utdrag, om du vill)
  9. visar ett avsnitt "Inlägg från ett år i dag"
  10. visar barnen på den aktuella sidan

Jag måste erkänna, det var den roligaste delen som jag arbetade på!

Del 14: Kombinera WP_Query med huvudfrågan

Denna del, skriven av Rachel, berättar om hur man kombinerar WP_Query klass med huvudfrågan. Det är ett mycket intressant ämne men jag måste ge några spoilers här-i denna del gav Rachel tre bra exempel:

  1. Det första exemplet handlade om att bara visa inlägg av en posttyp i ett kategorilogi.
  2. Det andra exemplet handlade om att få inläggen (returnerad av huvudfrågan) per posttyp och listade inläggen separerade per posttyp, men i en enda lista.
  3. Det tredje exemplet handlade om att separera huvudfrågan i två anpassade frågor.

Delar 15 till 18: Kompanierna i WP_Query-klassen

Visste du att det finns klasser som fungerar som WP_Query klass för att hjälpa WP_Query? I följande delar pratade Rachel och jag om:

  • maste WP_User_Query i del 15
  • maste WP_Comment_Query i del 16
  • maste WP_Meta_Query & WP_Date_Query i del 17

Del 18: Förfrågningsförbättringar i WordPress 4.1

I denna del pratade Rachel om förbättringarna i frågesystemet för WordPress i version 4.1-liknande kapslade frågor, kommentarsparametrar och allmän buggfixering. Det är en mild del, ett ljus läst före slutet.

Del 19: slutet

Som Oracle sa i The Matrix Revolutions: Allt som har en början har ett slut.

Det var en lång åktur, och som sagt i början är det en av de längsta serierna i Tuts + historia. Jag gick ihop med Rachel McCollin, en av de bästa instruktörerna i Tuts +, och vi är båda stolta över att vara de som skrev den längsta, mest omfattande och mest episka handledningsserien på WP_Query klass och dess följeslagare.

Vi arbetade väldigt hårt på serien, och vi hoppas verkligen att du njöt av varje del av det. Om du lärt dig något nytt i den här 19-serien, så är vi glada att vi har gjort ett bra jobb.

Om du har några kommentarer om denna serie, tveka inte att dela dina tankar i avsnittet Kommentarer nedan. Och, som alltid, om du gillade serien, glöm inte att dela den här sista delen med dina vänner som ett index.

Skål!