WordPress: eseguire query post avanzate per formato

Vediamo come effettuare query post avanzate per formato in WordPress, utile per prelevare dal database solo un determinato tipo di formato post (video, gallery, quote etc).

Come ben saprete WordPress permette da tempo l’uso di custom format, ovvero formati personalizzati di post. Le tipologie spaziano da post classico, quote, link, immagine, video. Ma come fare a filtrare solamente un determinato tipo di formato nel nostro loop di WordPress? Ecco la (semplice) soluzione.

Filtrare tutti i post format presenti nel database

$args = array(
'showposts' => 2,
'tax_query' => array(
array(
'taxonomy' => 'post_format',
'field' => 'slug',
'terms' => 'post-format-image',
'operator' => 'IN'
)
)
);
$the_query = query_posts( $args );

while (have_posts()) : the_post();

//Il tuo loop/HTML qui dentro.

endwhile;

Ecco l’analisi del codice:

Per il loop usiamo la funzionalità offerta da WordPress query_posts che permette di effettuare una query a partire da alcuni argomenti passabili alla funzione. Per filtrare il formato andiamo ad indicare:

  • numero di post da visualizzare -> showposts (nell’esempio 2)
  • array tax_query -> sta per taxonomy query
  • taxonomy -> indica per quale tipo di post effettuare la query (nel nostro caso post format).
  • terms -> recupera solo i post “immagine”, ovviamente potete specificare anche video, quote, link o altro a seconda delle vostre necessità. In questo punto è possibile anche passare un array per il recupero di più tipologie di formati post.
  • operator -> potete scegliere fra IN oppure NOT IN. Nel primo caso cerca e filtra il tipo di terms impostato. Nel secondo caso (not in) esclude quel determinato formato post dalla ricerca.

Filtrare tutti i post format in una determinata categoria

Per filtrare i post forma di una determinata categoria aggiungiamo il parametro cat all’array degli argomenti della query. In questo modo:

$args = array(
'showposts' => 2,
'cat' => 12, //12 è l'id della categoria da filtrare
'tax_query' => array(
array(
'taxonomy' => 'post_format',
'field' => 'slug',
'terms' => 'post-format-image',
'operator' => 'IN'
)
)
);
$the_query = query_posts( $args );

while (have_posts()) : the_post();

//Il tuo loop qui dentro.

endwhile;

Conclusioni

[button link=”http://www.targetweb.it/trucchi-hacks-snippets-wp/” color=”blue” target=”blank” size=”large”]Trucchi WordPress[/button] [button link=”http://www.targetweb.it/wordpress/” color=”blue” target=”blank” size=”large”]Guida WordPress[/button]

Un articolo che può essere utilissimo per creare la vostra struttura loop personalizzata in WordPress, se ti è stato utile condividilo sui tuoi socials preferiti!

0 0 voti
Valutazione dell'articolo
Iscriviti
Notificami
guest

Questo sito utilizza Akismet per ridurre lo spam. Scopri come vengono elaborati i dati derivati dai commenti.

1 Commento
Vecchi
Più recenti Le più votate
Feedback in linea
Visualizza tutti i commenti
trackback
Formati: esegui query post avanzate — wuppi.it
11 anni fa

[…] Formati: esegui query post avanzate […]

Rimani Aggiornato
Nuove idee, zero Spam
Ti invieremo solo le ultime novità di articoli o nostri progetti.
Iscrivendoti accetti la nostra privacy poliicy. Una volta iscritto, ricordati di attivare l'iscrizione cliccando sul link ricevuto via mail.
1
0
Esprimete la vostra opinione commentando.x