Benvenuti in un'altra parte della nostra serie "Mastering WP_Query". Come stiamo andando così lontano? Spero che ti piacciano questi tutorial tanto quanto ci divertiamo a scriverli.
In questo tutorial, imparerai le proprietà e i metodi di WP_Query
classe. Ma prima, penso sia appropriato parlare di "proprietà" e "metodi" in una classe.
Lo facciamo?
In PHP, c'è un modo per scrivere codice in a addetto alle pulizie modo: programmazione orientata agli oggetti o OOP. Con OOP, usiamo "classi" come progetti - ho preso il termine da uno dei classico post di Code Tuts +, "Object-Oriented PHP for Beginners" di Jason Lengstorf:
Una classe, per esempio, è come un progetto per una casa. Definisce la forma della casa su carta, con relazioni tra le diverse parti della casa chiaramente definite e pianificate, anche se la casa non esiste.
(E ricordalo WP_Query
è una classe essenziale del core di WordPress.)
Quando comprendi la nozione di classi PHP, "proprietà" e "metodi" diventano estremamente facili da capire poiché le parole sono solo sinonimi di "variabili" e "funzioni". Sì, proprietà sono variabili di una classe PHP e metodi sono funzioni di una classe PHP.
Ora abbiamo coperto ciò che sono, conosciamo ognuna di queste proprietà e metodi.
Avvertimento: Non sarebbe saggio cambiare direttamente le proprietà. Come dice il Codice, dovresti interagire con loro usando i metodi di WP_Query
.
Iniziamo con le proprietà, o le variabili, del WP_Query
classe.
$ query
Questa proprietà memorizza la query passata a $ WP_Query
oggetto.
$ query_vars
Questa proprietà memorizza un array associativo delle variabili (e dei loro valori) di $ query
.
$ queried_object
Questa proprietà memorizza l'oggetto attualmente interrogato, come il $ postale
oggetto se si tratta di una query post o il $ autore
oggetto se si tratta di una query dell'autore.
$ queried_object_id
Questa proprietà memorizza l'ID dell'oggetto interrogato.
$ messaggi
Questa proprietà memorizza i post restituiti dalla query.
$ POST_COUNT
Questa proprietà memorizza il numero di post per la query corrente.
$ found_posts
Questa proprietà memorizza il numero di post senza il LIMITE
clausola della query SQL.
$ max_num_pages
Questa proprietà memorizza il numero di pagine, calcolato dividendo $ found_posts
di $ posts_per_page
.
$ current_post
Questa proprietà memorizza il numero di indice dell'elemento corrente nel Loop. Ad esempio, lo è -1
se il ciclo è appena iniziato e viene incrementato dal file next_post ()
metodo.
$ postale
Questa proprietà memorizza, bene, il post corrente.
$ Is_ condizionale
Le seguenti proprietà sono memorizzate come booleani, fornendo informazioni sullo stato del post corrente:
$ is_single
: Controlla se si tratta di un singolo post di qualsiasi tipo di post (eccetto i tipi di post "allegato" e "pagina") o meno.$ is_page
: Controlla se si tratta di una pagina o no.$ is_archive
: Controlla se si tratta di una pagina di archivio o no.$ is_preview
: Controlla se si tratta di un'anteprima del post o no.$ is_date
: Controlla se si tratta di una pagina di archivio basata sulla data o meno.$ is_year
: Controlla se si tratta di una pagina di archivio annuale o meno.$ is_month
: Controlla se si tratta di una pagina di archivio basata sul mese o meno.$ is_time
: Verifica se si tratta di una pagina di archivio basata sul tempo (orario, minuzioso o secondario) oppure no.$ is_author
: Controlla se si tratta di una pagina di archivio dell'autore o no.$ is_category
: Controlla se si tratta di una pagina di archivio di categoria o meno.$ is_tag
: Controlla se si tratta di una pagina di archivio tag o no.$ is_tax
: Controlla se si tratta di una pagina di archivio tassonomia o no.$ is_search
: Controlla se si tratta di una pagina di "risultati di ricerca" o meno.$ is_feed
: Controlla se si tratta di un feed o no.$ is_comment_feed
: Controlla se si tratta di un feed di commenti o meno.$ is_trackback
: Verifica se si tratta di un trackback o meno.$ is_home
: Controlla se è la pagina principale del blog o no.$ is_404
: Verifica se si tratta di una pagina di errore 404 o meno.$ is_comments_popup
: Controlla se si tratta di una finestra popup di commenti o meno.$ is_admin
: Controlla se è il pannello di amministrazione o meno.$ is_attachment
: Controlla se si tratta di un allegato o meno.$ is_singular
: Verifica se si tratta di un singolo post di qualsiasi tipo di post (inclusi i tipi di post "allegato" e "pagina") o meno.$ is_robots
: Verifica se si tratta di una query per robots.txt
file o no.$ is_posts_page
: Verifica se si tratta della "Pagina dei post" (impostata nella pagina "Impostazioni di lettura" nel pannello di amministrazione) o meno.$ is_paged
: Verifica se si tratta di una query impaginata e non è la prima pagina.Ora che abbiamo finito con le proprietà, passiamo ai metodi (funzioni) di WP_Query
classe.
dentro()
Questo metodo inizializza semplicemente l'oggetto, impostando tutte le proprietà su NULLO
, 0
o FALSE
.
parse_query ($ query)
Questo metodo utilizza il $ query
proprietà per analizzare la query e popolare tutte le altre proprietà (eccetto $ messaggi
, $ POST_COUNT
, $ postale
e $ current_post
).
parse_query_vars ()
Questo metodo riorganizza le variabili di query.
get ($ query_var)
Questo metodo recupera una determinata variabile di query.
set ($ query_var, $ valore)
Questo metodo imposta la variabile di query data su un valore specifico.
& get_posts ()
Questo metodo restituisce i post richiesti dalla query e popola il file $ messaggi
e $ POST_COUNT
proprietà.
next_post ()
Questo metodo incrementa il $ current_post
indice e anticipi al prossimo post in $ messaggi
, restituendo l'oggetto attuale del post. (Questo metodo deve essere utilizzato all'interno di un Loop per funzionare correttamente).
the_post ()
Questo metodo imposta il globale $ postale
variabile con i dati del prossimo post. (Questo metodo deve essere utilizzato all'interno di un Loop per funzionare correttamente).
have_posts ()
Questo metodo controlla se ci sono post su cui lavorare e restituisce FALSE
se non ci sono. (Questo metodo deve essere usato prima un ciclo per funzionare correttamente).
rewind_posts ()
Questo metodo semplicemente resetta il $ current_post
e $ postale
proprietà.
& query ($ query)
Questo metodo chiama due dei suoi metodi fratelli, parse_query ()
e get_posts ()
, e restituisce il risultato di get_posts ()
.
get_queried_object ()
Questo metodo restituisce l'oggetto interrogato. (Imposta $ queried_object
se non è già impostato.)
get_queried_object_id ()
Questo metodo, simile a quello sopra, restituisce l'ID dell'oggetto interrogato ($ queried_object_id
).
Consiglio rapido: Se c'è una e commerciale prima di un metodo, significa che il metodo restituisce per riferimento.
Spero di essere riuscito a chiarire per te cosa significano "proprietà" e "metodi" per le classi. E se hai capito lo scopo delle proprietà e dei metodi del WP_Query
classe, posso dire che ho fatto un lavoro decente!
Hai qualcosa da aggiungere a questo articolo? Condividi i tuoi pensieri con noi nella sezione commenti qui sotto. E se ti è piaciuto l'articolo, non dimenticare di condividerlo con i tuoi amici.
Ci vediamo nella prossima parte della serie!