Come poter visualizzare i post di una determinata categoria con WordPress?
Possiamo utilizzare la funzione nativa get_posts passando come argomento l’id della categoria.
Esempio:
$posts = get_posts('category=1');
La variabile $posts conterrà i post e per visualizzarli dovremo scorrere i record nel seguente modo:
<ul>
<?php
global $post;
$args = array( 'category' => 1 );
$myposts = get_posts( $args );
foreach( $myposts as $post ) : setup_postdata($post); ?>
<li><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a></li>
<?php endforeach; ?>
</ul>
Gli argomenti che possiamo passare alla funzione get_posts sono:
<?php
$args = array(
'numberposts' => 5,//numero di post da visualizzare
'offset' => 0,//numero del post dal quale iniziare
'category' => ,//id della categoria
'orderby' => 'post_date',//ordine dei post
'order' => 'DESC',//Ordine crescente o decrescente
'include' => ,
'exclude' => ,
'meta_key' => ,//chiave campi personalizzati
'meta_value' => ,//valore campi personalizzati
'post_type' => 'post',//tipo del post
'post_mime_type' => ,
'post_parent' => ,//ID del post padre
'post_status' => 'publish' );
?>
Possiamo fare riferimento per informazioni aggiuntive alla guida ufficiale in inglese al seguente link codex.wordpress.org/get_posts
Ciao Riccardo,
nel tuo caso ti consigli odi utilizzare questo widget:
https://it.wordpress.org/plugins/recent-posts-by-category-widget/
è più pratico 😉
ciao,
complimenti per l’articolo, molto chiaro.
Se volessi invece visualizzare i post di una sola categoria nel widget “recent post” (quello di default di wordpress, per capirci), dove dovrei metterlo il codice (ammesso che sia lo stesso codice)?
grazie
Grazie amico mi hai salvato la vita 😛
Proprio quello che cercavo. Articolo semplice ma molto chiaro.
mrcanoa