Mastering WP_Query Proprietăți și metode

Bine ați venit în încă o parte a seriei noastre "Mastering WP_Query". Cum facem până acum? Sper că vă bucurați de aceste tutoriale la fel de mult ca și cum ne-am bucura să le scriem.

În acest tutorial, veți afla despre proprietățile și metodele WP_Query clasă. Dar, mai întâi, cred că este potrivit să vorbim despre ce "proprietăți" și "metode" sunt într-o clasă.

Vom?

Care sunt proprietățile și metodele, exact?

În PHP, există o modalitate de a scrie cod într-un mai curat mod: programare orientată pe obiect sau OOP. Cu PLO, folosim "clase" ca schițe - am luat termenul de la unul din clasic posturi de Cod Tuts +, "Object Oriented PHP pentru începători" de Jason Lengstorf:

O clasă, de exemplu, este ca un plan pentru o casă. Ea definește forma casei pe hârtie, relațiile dintre diferitele părți ale casei fiind clar definite și planificate, chiar dacă casa nu există.

(Și amintiți-vă că WP_Query este o clasă esențială a nucleului WordPress.)

Când înțelegeți noțiunea de clase PHP, "proprietățile" și "metodele" devin extrem de ușor de înțeles, deoarece cuvintele sunt doar sinonime pentru "variabile" și "funcții". Da, proprietăţi sunt variabilele unei clase PHP și metode sunt funcții ale unei clase PHP.

Acum am acoperit ceea ce sunt, să cunoaștem fiecare dintre aceste proprietăți și metode.

Avertizare: Nu ar fi înțelept să schimbați proprietățile direct. După cum spune Codex-ul, ar trebui interacționa cu ei folosind metodele de WP_Query.

Proprietățile clasei WP_Query

Să începem cu proprietățile sau variabilele lui WP_Query clasă.

Șirul de interogare: $ interogare

Această proprietate stochează interogarea transmisă către $ wp_query obiect.

Matricea variabilelor de interogare: $ query_vars

Această proprietate stochează o matrice asociativă a variabilelor (și valorile lor) de $ interogare.

Obiectul interogat: $ queried_object

Această proprietate stochează obiectul interogat curent, cum ar fi $ postare obiect dacă este o interogare post sau $ autor obiect dacă este o interogare de autor.

ID-ul obiectului interogat: $ queried_object_id

Această proprietate stochează ID-ul obiectului interogat.

Posturile returnate din interogare: posturi $

Această proprietate stochează mesajele returnate din interogare.

Numărul de mesaje afișate: $ POST_COUNT

Această proprietate stochează numărul de postări pentru interogarea curentă.

Numărul de postări returnate din interogare: $ found_posts

Această proprietate stochează numărul de postări fără LIMITĂ clauza interogării SQL.

Numărul de pagini: $ MAX_NUM_PAGES

Această proprietate stochează numărul de pagini - este calculat prin împărțire $ found_posts de $ posts_per_page.

Indexul mesajului curent: $ current_post

Această proprietate stochează numărul de index al elementului curent din buclă. De exemplu, este -1 dacă Loop-ul tocmai a început și este incrementat de către next_post () metodă.

Mesajul curent: $ postare

Această proprietate stochează, bine, postul curent.

Condiționat Booleans Tag: $ Is_ condițional

Următoarele proprietăți sunt stocate ca booleani, oferind informații despre starea curentă a mesajului:

  • $ is_single: Verifică dacă este o singură postare de tip post (cu excepția tipurilor de posturi "atașament" și "pagină") sau nu.
  • $ is_page: Verifică dacă este o pagină sau nu.
  • $ is_archive: Verifică dacă este o pagină de arhivă sau nu.
  • $ is_preview: Verifică dacă este o previzualizare post sau nu.
  • $ is_date: Verifică dacă este o pagină de arhivă bazată pe date sau nu.
  • $ is_year: Verifică dacă este o pagină de arhivă bazată pe ani sau nu.
  • $ is_month: Verifică dacă este o pagină de arhivă bazată pe lună sau nu.
  • $ is_time: Verifică dacă este o pagină de arhivă bazată pe timp (oră, minute sau secundă) sau nu.
  • $ is_author: Verifică dacă este o pagină de arhivă a autorului sau nu.
  • $ is_category: Verifică dacă este o pagină de arhivă de categorie sau nu.
  • $ is_tag: Verifică dacă este o pagină de arhivă cu tag-uri sau nu.
  • $ is_tax: Verifică dacă este o pagină de arhivă taxonomică sau nu.
  • $ is_search: Verifică dacă este sau nu o pagină cu "rezultatele căutării".
  • $ is_feed: Verifică dacă este sau nu un feed.
  • $ is_comment_feed: Verifică dacă este vorba despre un feed de comentarii sau nu.
  • $ is_trackback: Verifică dacă este un trackback sau nu.
  • $ is_home: Verifică dacă este pagina principală a blogului sau nu.
  • $ is_404: Verifică dacă este o pagină de eroare 404 sau nu.
  • $ is_comments_popup: Verifică dacă este o fereastră popup de comentarii sau nu.
  • $ is_admin: Verifică dacă este panoul de administrare sau nu.
  • $ is_attachment: Verifică dacă este atașament sau nu.
  • $ is_singular: Verifică dacă este sau nu o singură postare a oricărui tip de post (inclusiv tipurile de posturi "atașament" și "pagina").
  • $ is_robots: Verifică dacă este o interogare pentru robots.txt fișier sau nu.
  • $ is_posts_page: Verifică dacă este "pagina de mesaje" (setată pe pagina "Setări de citire" din panoul de administrare) sau nu.
  • $ is_paged: Verifică dacă este o interogare paginată și nu este prima pagină.

Metode ale clasei WP_Query

Acum că am terminat cu proprietățile, să trecem la metodele (funcțiile) ale WP_Query clasă.

init ()

Această metodă inițializează pur și simplu obiectul, setând toate proprietățile NUL, 0 sau FALS.

parse_query ($ query)

Această metodă utilizează $ interogare proprietate pentru a analiza interogarea și a popula toate celelalte proprietăți (cu excepția posturi $, $ POST_COUNT, $ postare și $ current_post).

parse_query_vars ()

Această metodă repară variabilele interogării.

obține ($ query_var)

Această metodă preia o variabilă de interogare dată.

set ($ query_var, valoare $)

Această metodă stabilește variabila de interogare dată la o anumită valoare.

& get_posts ()

Această metodă returnează posturile solicitate de interogare și populare posturi $ și $ POST_COUNT proprietăţi.

next_post ()

Această metodă mărește valoarea $ current_post index și avansuri la postul următor în posturi $, returnează obiectul post curent. (Această metodă trebuie utilizată în interiorul unui buclă pentru a funcționa corespunzător.)

bara()

Această metodă stabilește valoarea globală $ postare variabilă cu datele postului următor. (Această metodă trebuie folosită în interiorul unui buclă pentru a funcționa corespunzător.)

have_posts ()

Această metodă verifică dacă există postări la care să lucreze și se întoarce FALS dacă nu există. (Această metodă trebuie utilizată inainte de o buclă pentru a funcționa corect.)

rewind_posts ()

Această metodă resetează simplu $ current_post și $ postare proprietăţi.

& interogare (interogare $)

Această metodă numește două metode frățești, parse_query () și get_posts (), și returnează rezultatul get_posts ().

get_queried_object ()

Această metodă returnează obiectul interogat. (Se stabilește $ queried_object dacă nu este deja setat.)

get_queried_object_id ()

Această metodă, similară celei de mai sus, returnează ID-ul obiectului interogat ($ queried_object_id).

Sfat rapid: Dacă există o ampersand înainte de o metodă, înseamnă că metoda se întoarce prin referință.

Împachetarea pentru ziua de azi

Sper că am reușit să vă explic clar ce înseamnă "proprietăți" și "metode" pentru clase. Și dacă ați înțeles scopul proprietăților și metodelor WP_Query eu pot spune că am făcut o treabă decentă!

Aveți ceva de adăugat la acest articol? Împărtășiți-vă gândurile cu noi în secțiunea Comentarii de mai jos. Și dacă ți-a plăcut articolul, nu uita să îl împarți cu prietenii tăi.

Ne vedem în următoarea parte a seriei!

Cod