This page redirects to an external site: https://developer.wordpress.org/reference/classes/wp_query/
Languages: English • Italiano • 日本語 (Add your language)
WP_Query è una classe definita in wp-includes/query.php
che gestisce le complesse operazioni di richieste di articoli (o pagine) di un blog WordPress. Con wp-blog-header.php
(o la classe WP nella Version 2.0) si forniscono all'oggetto $wp_query le informazioni che definiscono la richiesta corrente, quindi $wp_query determina il tipo di query con cui ha a che fare (probabilmente un archivio di categoria, un archivio per data, un feed o una ricerca) e recupera gli articoli richiesti. Con la richiesta vengono mantenute molte altre informazioni che potranno essere recuperate successivamente.
La maggior parte delle volte è possibile trovare le informazioni desiderate senza dover gestire le funzioni della classe e le variabili globali. Vi sono un insieme di funzioni che è possibile richiamare ovunque che permettono di ottenere le informazioni desiderate.
Vi sono due scenari nei quali si desidererà utilizzare WP_Query. Il primo è quello nel quale si desidera scoprire con quale tipo di richiesta abbia attualmente a che fare WordPress. Le proprietà $is_* sono studiate per fornire queste informazioni: utilizzare i Conditional Tags per interagire con queste cose. Questo è lo scenario più comune per chi scrive plugin (il secondo normalmente si applica a chi scrive temi).
Il secondo scenario è durante Il Loop. WP_Query fornisce numerose funzioni per le operazioni più comuni con The Loop. Per cominciare, have_posts(), che richiama $wp_query->have_posts(), viene chiamato per verificare che vi siano articoli da visualizzare. Se ve ne sono inizia un ciclo while, utilizzando have_posts() come condizione. Questo fa si che si ripeta il ciclo sino a quando vi sono articoli da visualizzare. In ciascuna interazione viene chiamata la funzione the_post(), che richiama $wp_query->the_post() la quale imposta le variabili interne a $wp_query e la variabile globale $post (sulla quale i Template Tags si basano). Queste sono le funzioni che si dovrebbero utilizzare quando si scrive un tema che necessita di un ciclo. Si veda anche Il Loop e The Loop in Action per avere maggiori informazioni sul funzionamento.
Nota: Se si utilizza the_post() nella propria query occorre eseguire wp_reset_postdata() subito dopo per far si che i Template Tags utilizzino nuovamente l'articolo corrente della query principale.
<?php // La Query $the_query = new WP_Query( $args ); // Il Loop while ( $the_query->have_posts() ) : $the_query->the_post(); echo '<li>' . get_the_title() . '</li>'; endwhile; // Ripristina Query & Post Data originali wp_reset_query(); wp_reset_postdata(); /* La seconda Query (senza variabili globali) */ $query2 = new WP_Query( $args2 ); // Il secondo Loop while( $query2->have_posts() ): $query2->next_post(); echo '<li>' . get_the_title( $query2->post->ID ) . '</li>'; endwhile; // Ripristina Query & Post Data originali wp_reset_query(); wp_reset_postdata(); ?>
Questa è la documentazione formale di WP_Query. Non è possibile modificare direttamente le proprietà ma si dovranno utilizzare dei metodi. Si veda anche Interagire con WP_Query per alcune utili funzioni per evitare di pasticciare con le funzioni interne alla classe e le variabili globali.
(Una e commerciale (ampersand - &) prima del nome di un metodo indica che viene returns by reference.)
Visualizza gli articoli associati ad un determinato autore.
Visualizza gli articoli di un Autore
Visualizza gli articoli di un autore utilizzando l'id autore:
$query = new WP_Query( 'author=123' );
Visualizza gli articoli di un autore utilizzando il 'user_nicename' dell'autore:
$query = new WP_Query( 'author_name=rami' );
Visualizza gli articoli di diversi Autori
Visualizza gli articoli da diversi autori specifici:
$query = new WP_Query( 'author=2,6,17,38' );
Esclude gli articoli appartenenti ad un Autore
Visualizza tutti gli articoli eccetto quelli di un autore(singolo) mettendo come prefisso all'id un segno '-' (meno):
$query = new WP_Query( 'author=-12' );
Visualizza gli articoli associati a determinate categorie.
Mostra articoli di una categoria
Visualizza gli articoli che hanno questa categoria (e ogni figlio di questa categoria), using category id:
$query = new WP_Query( 'cat=4' );
Visualizza gli articoli che hanno questa categoria (e ogni figlio di questa categoria), using category slug:
$query = new WP_Query( 'category_name=staff' );
Mostra articoli di varie categorie
Visualizza gli articoli che hanno queste categorie, utilizzando l'id di categoria:
$query = new WP_Query( 'cat=2,6,17,38' );
Visualizza gli articoli che hanno queste categorie, utilizzando l'abbreviazione (slug) di categoria:
$query = new WP_Query( 'category_name=staff,news' );
Visualizza gli articoli che hanno tutte queste categorie, utilizzando l'abbreviazione (slug) di categoria:
$query = new WP_Query( 'category_name=staff+news' );
Escludere articoli appartenenti ad una categoria
Visualizza tutti gli articoli meno quelli che hanno una categoria mettendo come prefisso ai loro id un segno '-' (meno).
$query = new WP_Query( 'cat=-12,-34,-56' );
Gestione di categorie multiple
Visualizza gli articoli che sono in categorie multiple. L'esempio seguente visualizza gli articoli che appartengono sia categoria 2 che 6:
$query = new WP_Query( array( 'category__and' => array( 2, 6 ) ) );
Per visualizzare articoli dalla categoria 2 OPPURE 6, è possibile utilizzare cat come spiegato in precedenza oppure utilizzare category__in (si noti che i questo caso non verranno visualizzati articoli appartenenti ai figli di queste categorie):
$query = new WP_Query( array( 'category__in' => array( 2, 6 ) ) );
È anche possibile escludere categorie multiple in questo modo:
$query = new WP_Query( array( 'category__not_in' => array( 2, 6 ) ) );
Mostra gli articoli associati a determinati tag.
Mostra gli articoli per un tag
Visualizza gli articoli che hanno questo tag utilizzando l'abbreviazione del tag:
$query = new WP_Query( 'tag=cooking' );
Visualizza gli articoli che hanno questo tag utilizzando l'id del tag
$query = new WP_Query( 'tag_id=13' );
Mostra gli articoli con diversi tag
Visualizza gli articoli che hanno "uno" di questi tag:
$query = new WP_Query( 'tag=bread,baking' );
Visualizza gli articoli che hanno "tutti" questi tag:
$query = new WP_Query( 'tag=bread+baking+recipe' );
Gestione tag multipli
Visualizza gli articoli sono contrassegnati sia dal tag di id 37 che dal tag di id 47:
$query = new WP_Query( array( 'tag__and' => array( 37, 47 ) ) );
Per visualizzare gli articoli che abbiano o il di id 37 oppure 47 è possibile utilizzare tag come spiegato in precedenza oppure specificarlo esplicitamente usando tag__in:
$query = new WP_Query( array( 'tag__in' => array( 37, 47 ) ) );
Visualizza gli articoli che nessuno dei due tag di id 37 e 47:
$query = new WP_Query( array( 'tag__not_in' => array( 37, 47 ) ) );
I parametri tag_slug__in e tag_slug__and operano praticamente nello stesso modo ma utilizzano l'abbreviazione (slug) del tag.
Mostra gli articoli associati a determinate tassonomie.
Nota importante: tax_query accetta un array di parametri di arrays di argomenti di tax query (prende un array di array) - si veda il secondo esempio qua sotto. Questo construtto permette di interrogare tassonomie multiple utilizzando il parametro relation nel primo array (quello più esterno) (outer) per descrivere la relazione booleana fra le varie query di tassonomia.
Dalla 3.5 è stato risolto un bug che restituiva inavvertitamente tutti gli articoli quando il risultato doveva essere vuoto.
Query di tassonomia semplice:
Visualizza gli articoli contrassegnati con bob nella tassonomia personalizzata persone:
$args = array( 'post_type' => 'post', 'persone' => 'bob' ); $query = new WP_Query( $args );
Visualizza gli articoli contrassegnati con bob nella tassonomia personalizzata persone utilizzando tax_query:
$args = array( 'post_type' => 'post', 'tax_query' => array( array( 'taxonomy' => 'persone', 'field' => 'slug', 'terms' => 'bob' ) ) ); $query = new WP_Query( $args );
Gestione tassonomie multiple:
Visualizza articoli da diverse tassonomie personalizzate:
$args = array( 'post_type' => 'post', 'persone' => 'bob', 'lingua' => 'inglese' ); $query = new WP_Query( $args );
Visualizza articoli da diverse tassonomie personalizzate utilizzando tax_query:
$args = array( 'post_type' => 'post', 'tax_query' => array( 'relation' => 'AND', array( 'taxonomy' => 'genere_film', 'field' => 'slug', 'terms' => array( 'azione', 'commedia' ) ), array( 'taxonomy' => 'attore', 'field' => 'term_id', 'terms' => array( 103, 115, 206 ), 'operator' => 'NOT IN' ) ) ); $query = new WP_Query( $args );
Visualizza articoli che sono nella categoria citazioni OPPURE che sono nel formato quote:
$args = array( 'post_type' => 'post', 'tax_query' => array( 'relation' => 'OR', array( 'taxonomy' => 'category', 'field' => 'slug', 'terms' => array( 'citazioni' ) ), array( 'taxonomy' => 'post_format', 'field' => 'slug', 'terms' => array( 'post-format-quote' ) ) ) ); $query = new WP_Query( $args );
Visualizza gli articoli in base ad una ricerca per parole chiave.
Mostra gli articoli in base ad una chiave di ricerca
Visualizza gli articoli che corrispondono alla ricerca del termine "keyword":
$query = new WP_Query( 's=keyword' );
Visualizza il contenuto in base ai parametri di articolo e di pagina.
Mostra Articolo/Pagina per ID
Visualizza un articolo in base al suo ID:
$query = new WP_Query( 'p=7' );
Visualizza una pagina in base al suo ID::
$query = new WP_Query( 'page_id=7' );
Mostra Articolo/Pagina per abbreviazione (slug)
Visualizza un articolo in base alla sua abbreviazione (slug):
$query = new WP_Query( 'name=informazioni-su-di-me' );
Visualizza una pagina in base alla sua abbreviazione (slug):
$query = new WP_Query( 'pagename=contatti' );
Mostra i figli di una Pagina
Visualizza le pagine figlie utilizzando l'abbreviazione della apgina genitrice e figlia, separate da una barra (es. 'abbreviazione_genitore/abbreviazione_figlio'):
$query = new WP_Query( 'pagename=contattaci/canada' );
Visualizza le pagine figlie utilizzando l'ID della pagina madre:
$query = new WP_Query( 'post_parent=93' );
Visualizza solo le pagine principali escludendo tutte le pagine figlie:
$query = new WP_Query( 'post_parent=0' );
Gestione Articoli/Pagine multiple
Visualizza solo specifici articoli:
$query = new WP_Query( array( 'post_type' => 'page', 'post__in' => array( 2, 5, 12, 14, 20 ) ) );
Visualizza tutti gli articoli ma NON quelli specificati:
$query = new WP_Query( array( 'post_type' => 'post', 'post__not_in' => array( 2, 5, 12, 14, 20 ) ) );
Nota: non è possibile combinare 'post__in' e 'post__not_in' nella medesima query.
Visualizza gli articoli associati a specifici tipi di articolo.
Visualizza articolo per tipo
Visualizza solo pagine:
$query = new WP_Query( 'post_type=page' );
Visualizza 'any' tipo di articolo (recupera qualiasi tipo escludendo le revisioni e le tipologie con 'exclude_from_search' impostate a TRUE):
$query = new WP_Query( 'post_type=any' );
Visualizza vari tipi di articolo, compresi i custom post types:
$query = new WP_Query( array( 'post_type' => array( 'post', 'page', 'film', 'libri' ) ) );
Visualizza articoli associati a determinati tipi di stato.
Visualizza articolo in base allo stato
Visualizza solo le bozze:
$query = new WP_Query( 'post_status=draft' );
Visualizza articoli con diversi stati:
$query = new WP_Query( array( 'post_status' => array( 'pending', 'draft', 'future' ) ) );
Visualizza tutti gli allegati:
$query = new WP_Query( array( 'post_status' => 'any', 'post_type' => 'attachment' ) );
Mostrare x articoli per pagina
Visualizza 3 articoli per pagina:
$query = new WP_Query( 'posts_per_page=3' );
Mostrare tutti gli articoli
Visualizza tutti gli articoli su una singola pagina:
$query = new WP_Query( 'posts_per_page=-1' );
Visualizza tutti gli articoli disabilitando la paginazione:
$query = new WP_Query( 'nopaging=true' );
Scartare alcuni articoli
Visualizza gli articoli a partire dal quarto:
$query = new WP_Query( 'offset=3' ) );
Visualizza 5 articoli per pagina a partire da dopo i 3 articoli più recenti:
$query = new WP_Query( array( 'posts_per_page' => 5, 'offset' => 3 ) );
Mostrare articoli dalla pagina x
Visualizza gli articoli dalla pagina numero 6:
$query = new WP_Query( 'paged=6' );
Mostrare articoli dalla pagina corrente
Visualizza gli articoli a partire dalla pagina corrente:
$query = new WP_Query( array( 'paged' => get_query_var( 'paged' ) ) );
Visualizza gli articoli a partire dalla pagina corrente ed imposta il parametro 'paged' ad 1 quando la variabile di query non è impostata (prima pagina).
$paged = (get_query_var('paged')) ? get_query_var('paged') : 1; $query = new WP_Query( array( 'paged' => $paged ) );
Nota sulla paginazione: Utilizzare get_query_var('page'); se si desidera che la query funzioni nel Template di pagina che è stato impostato come pagina iniziale statica. La variabile di query 'page' contiene il numero di pagina per un singolo articolo o pagina che contiene il Quicktag <!--nextpage-->
nel contenuto dell'articolo.
Visualizza gli articoli della pagina corrente su una pagina iniziale statica:
$paged = (get_query_var('page')) ? get_query_var('page') : 1; $query = new WP_Query( array( 'paged' => $paged ) );
Ordinanono gli articoli recuperati.
Mostrare articoli ordinati per titolo in ordine discendente
Visualizza gli articoli odinati in base al titolo in ordine discendente:
$query = new WP_Query( array ( 'orderby' => 'title', 'order' => 'DESC' ) );
Mostrare articoli casuali
Visualizza un articolo a caso:
$query = new WP_Query( array ( 'orderby' => 'rand', 'posts_per_page' => '1' ) );
Mostrare gli articoli più popolari
Visualizza gli articoli ordinati in base la numero dei commenti:
$query = new WP_Query( array( 'orderby' => 'comment_count' ) );
Mostrare dei prodotti ordinati in base al prezzo
Visualizza gli articoli di tipo 'Prodotto' ordinati in base al campo personalizzato 'Prezzo':
$query = new WP_Query( array ( 'post_type' => 'prodotto', 'orderby' => 'meta_value', 'meta_key' => 'prezzo' ) );
Valori multipli di 'orderby'
Visualizza le pagine ordinate in base al 'title' ed al 'menu_order'. (il titolo è predominante):
$query = new WP_Query( array( 'post_type' => 'page', 'orderby' => 'title menu_order', 'order' => 'ASC' ) );
'orderby' con 'meta_value' e tipi di articolo personalizzati
Visualizza gli articoli di tipo 'mio_tipo_di_articolo', ordinati per 'eta' e filtrati per mostrare solo le età 3 e 4 (utilizzando meta_query).
$args = array( 'post_type' => 'mio_tipo_di_articolo', 'meta_key' => 'eta', 'orderby' => 'meta_value_num', 'order' => 'ASC', 'meta_query' => array( array( 'key' => 'eta', 'value' => array(3, 4), 'compare' => 'IN', ) ) ); $query = new WP_Query($args);
Mostra articoli in evidenza oppure li ignora.
Mostrare gli articoli in videnza
Visualizza solo il primo articolo in evidenza:
$sticky = get_option( 'sticky_posts' ); $query = new WP_Query( 'p=' . $sticky[0] );
Visualizza solo il primo articolo in evidenza e se non ve ne è alcuno l'ultimo articolo pubblicato:
$args = array( 'posts_per_page' => 1, 'post__in' => get_option( 'sticky_posts' ), 'ignore_sticky_posts' => 1 ); $query = new WP_Query( $args );
Visualizza solo il primo articolo in evidenza, se non ve ne è alcuno non restituisce nulla:
$sticky = get_option( 'sticky_posts' ); $args = array( 'posts_per_page' => 1, 'post__in' => $sticky, 'ignore_sticky_posts' => 1 ); $query = new WP_Query( $args ); if ( $sticky[0] ) { // inserire il proprio codice... }
Non mostrare gli articoli in evidenza
Esclude tutti gli articoli in evidenza dalla query:
$query = new WP_Query( array( 'post__not_in' => get_option( 'sticky_posts' ) ) );
Esclude gli articoli in evidenza di una categoria. Restituisce TUTTI gli articoli di una categoria ma non mette gli articoli in evidenza all'inizio dell'elenco. Gli 'articoli in evidenza' appariranno però nell'elenco nella loro posizione naturale in base all'ordinamento (es. per data):
$query = new WP_Query( array( 'ignore_sticky_posts' => 1, 'posts_per_page' => 3, 'cat' => 6 );
Esclude gli articoli in evidenza di una data categoria. Restituisce gli articoli appartenenti ad una categoria ma esclude completamente gli articoli in evidenza e gestisce correttamente le regole di paginazione:
$paged = get_query_var( 'paged' ) ? get_query_var( 'paged' ) : 1; $sticky = get_option( 'sticky_posts' ); $args = array( 'cat' => 3, 'ignore_sticky_posts' => 1, 'post__not_in' => $sticky, 'paged' => $paged ); $query = new WP_Query( $args );
Mostrare gli articoli associati ad un certo periodo di tempo.
Restituisce gli articoli per la data corrente:
$today = getdate(); $query = new WP_Query( 'year=' . $today["year"] . '&monthnum=' . $today["mon"] . '&day=' . $today["mday"] );
Restituisce gli articoli della settimana corrente:
$week = date('W'); $year = date('Y'); $query = new WP_Query( 'year=' . $year . '&w=' . $week );
Restituisce gli articoli datatti 20 Dicembre:
$query = new WP_Query( 'monthnum=12&day=20' );
Nota: Le query precedenti restituiscono articoli per una data specicifica, es. "Articli dell'anno X, mese X, giorno X". Non riescono ad estrarre articoli per un periodo di tempo relativo al presente, quindi query del tipo "Articoli degli ultimi 30 giorni" oppure "Articoli dell'ultimo anno" non sono possibili con le query di base e richiedono che gli articoli vengano filtrati per completare l'operazione ed ottenere i dati desiderati. Gli esempi precedenti utilizzano il filtro posts_where e possono essere modificate per la maggior parte delle query di tipo relativo.
Restituire gli articoli dal 1 marzo al 15 marzo 2010:
// Crea una nuova funzione di filtraggio che aggiunga una clausola where alla query function filter_where( $where = '' ) { // articoli dal 1 marzo al 15 marzo 2010 $where .= " AND post_date >= '2010-03-01' AND post_date < '2010-03-16'"; return $where; } add_filter( 'posts_where', 'filter_where' ); $query = new WP_Query( $query_string ); remove_filter( 'posts_where', 'filter_where' );
Restituire articoli degli ultimi 30 giorni:
// Crea una nuova funzione di filtraggio che aggiunga una clausola where alla query function filter_where( $where = '' ) { // posts in the last 30 days $where .= " AND post_date > '" . date('Y-m-d', strtotime('-30 days')) . "'"; return $where; } add_filter( 'posts_where', 'filter_where' ); $query = new WP_Query( $query_string ); remove_filter( 'posts_where', 'filter_where' );
Restituire gli articoli più vecchi fra i 30 ed i 60 giorni
// Crea una nuova funzione di filtraggio che aggiunga una clausola where alla query function filter_where( $where = '' ) { // articoli vecchi fra i 30 ed i 60 giorni $where .= " AND post_date >= '" . date('Y-m-d', strtotime('-60 days')) . "'" . " AND post_date <= '" . date('Y-m-d', strtotime('-30 days')) . "'"; return $where; } add_filter( 'posts_where', 'filter_where' ); $query = new WP_Query( $query_string ); remove_filter( 'posts_where', 'filter_where' );
Mostrare articoli associati a determinati campi personalizzati.
Il 'type' DATE opera solo con il valore di 'compare' BETWEEN se la data è memorizzata nel formato YYYYMMDD e viene verificato con questo formato.
Una semplice query con campi personalizati:
Visualizza gli articoli dove la chiave del campo personalizzato è 'colore' indipendentemente dal valore del campo personalizzato:
$query = new WP_Query( 'meta_key=colore' );
Visualizza gli articoli dove il valore del campo personalizzato è 'blu' indipendentemente dal valore della chiave del campo personalizzato:
$query = new WP_Query( 'meta_value=blu' );
Visaulizza Pagine dove il valore del campo personalizzato è 'blu' indipendentemente dal valore della chiave del campo personalizzato:
$query = new WP_Query( 'meta_value=blue&post_type=page' );
Visualizza gli articoli dove la chiave del campo personalizzato è 'colore' ed il valore del campo personalizzato è 'blu':
$query = new WP_Query( array( 'meta_key' => 'colore', 'meta_value' => 'blu' ) );
Visualizza gli articoli dove la chiave del campo personalizzato è 'colore' ed il valore del campo personalizzato NON È 'blu':
$query = new WP_Query( array( 'meta_key' => 'colore', 'meta_value' => 'blu', 'meta_compare' => '!=' ) );
Visualizza 'prodotti' dove la chiave del campo personalizzato è 'prezzo' ed il valore del campo personalizzato è MINORE O UGUALE A 22.
Utilizzando il parametro 'meta_value' il valore di 99 verrà considerato maggiore di 100 poichè i dati sono memorizati come 'stringhe', e non 'numeri'. Per una comparazione numerica utilizare 'meta_value_num'.
$query = new WP_Query( array( 'meta_key' => 'prezzo', 'meta_value' => '22', 'meta_compare' => '<=', 'post_type' => 'prodotto' ) );
Visualizza gli articoli con un campo personalizzato di valore zero (0) idipendentemente dal valore della chiave del campo personalizzato:
$query = new WP_Query( array ( 'meta_value' => '_wp_zero_value' ) );
Gestione di un singolo campo personalizzato:
Visualizza gli articoli da un singolo campo personalizzato:
$args = array( 'post_type' => 'prodotto', 'meta_query' => array( array( 'key' => 'colore', 'value' => 'blu', 'compare' => 'NOT LIKE' ) ) ); $query = new WP_Query( $args );
(SI noti che meta_query si aspetta uan serie di array nidificati anche se si ha una singola query.)
Gestione di campi personalizzati multipli:
Visualizza articoli con diversi campi personalizzati:
$args = array( 'post_type' => 'prodotto', 'meta_query' => array( array( 'key' => 'colore', 'value' => 'blu', 'compare' => 'NOT LIKE' ), array( 'key' => 'prezzo', 'value' => array( 20, 100 ), 'type' => 'numeric', 'compare' => 'BETWEEN' ) ) ); $query = new WP_Query( $args );
Visualizza articoli con meta key 'colore' NON UGUALE al valore 'blu' OPPURE meta key 'prezzo' con valori compresi FRA 20 e 100:
$args = array( 'post_type' => 'prodotto', 'meta_query' => array( 'relation' => 'OR', array( 'key' => 'colore', 'value' => 'blu', 'compare' => 'NOT LIKE' ), array( 'key' => 'prezzo', 'value' => array( 20, 100 ), 'type' => 'numeric', 'compare' => 'BETWEEN' ) ) ); $query = new WP_Query( $args );
Mostra gli articoli se l'utente ha le capacità appropriate:
Visualizza articoli pubblici e privati se l'utente dispone della capacita appropriata:
$query = new WP_Query( array( 'post_status' => array( 'publish', 'private' ), 'perm' => 'readable' ) );
Impedisce che i dati recuperati venfgano aggiunti alla cache.
Visualizza gli articoli senza aggiungere le informazioni alla cache
Visualizza 50 articoli ma non aggiunge le informazioni sugli articoli alla cache:
$query = new WP_Query( array( 'posts_per_page' => 50, 'cache_results' => false ) );
Visualizza gli articoli senza aggiungere i metadati degli articoli alla cache
Visualizza 50 articoli ma non aggiunge le informazioni sui metadati degli articoli alla cache:
$query = new WP_Query( array( 'posts_per_page' => 50, 'update_post_meta_cache' => false ) );
Visualizza gli articoli senza aggiungere le informazioni sui termini degli articoli alla cache
Visualizza 50 articoli ma non aggiunge le informazioni sui termini degli articoli alla cache:
$query = new WP_Query( array( 'posts_per_page' => 50, 'update_post_term_cache' => false ) );
In un normale utilizzo non si ha solitamente necessità di utilizzare questo parametro, aggiungere alla cache è solitamente la cosa giusta da fare, tuttavia può essere utile in determinate circostanze. Un esempio di tali circostanze potrebbe essere quando si utilizza una WP_Query per recuperare un elenco di titoli di articoli e la loro URL per visualizzarli, ma nessun'altra informazione riguardante gli articoli verrà utilizzata ed i dati sulle tassonomie e sui metadati non sono necessari. Non caricando queste informazioni si risparmia tempo per le query SQL extra assolutamente non necessarie.
Nota: Se viene utilizzato un sistema di backend di cache di oggetti permanente (tipo memcached) questi parametri sono impostati automaticamente a falso perchè non vi è necessità di aggiornare la cache ad ogni caricamento pagina quando è presente una cache persistente.
Imposta i valori di ritorno.
Si noti che vi sono altri filtri non in elenco. Essendo complesso mantenere sempre aggiornato il codex, analizzare la funzione get_posts();
dentro la classe WP_Query (/wp-includes/query.php) per vedere tutti i filtri disponibili.
WP_Query() si trova in wp-includes/query.php
.
Query Tags: WP_Query (Classe), get_query_var(), query_posts(), have posts(), the_post(), rewind_posts(), wp_reset_postdata(), wp_reset_query()