Conta quanti post ci sono nella categoria

24 giu 2011, 21:22:54
Visualizzazioni: 62.6K
Voti: 6

Questo è ciò che sto cercando di fare:

se il numero di post è maggiore di 20 -> mostra il link a un'altra pagina (che mostra tutti i post) se il numero di post è minore di 20 -> non mostrare il link

Finora sono riuscito a ottenere il numero di post usando

$count_posts = wp_count_posts('inventory');
$published_posts = $count_posts->publish;

ma non so come proseguire da qui, qualche suggerimento?

0
Tutte le risposte alla domanda 3
0
20

Se ricordo bene, il conteggio dei post in una categoria è memorizzato in modo persistente nell'oggetto categoria. Quindi usa get_category() o una sua variante e recupera il numero dall'oggetto.

Codice di esempio (non testato):

$category = get_category($id);
$count = $category->category_count;

if( $count > $something ) {

    // roba da fare
} 
24 giu 2011 22:05:00
0

Puoi accedervi direttamente dall'oggetto stesso:

foreach ( get_the_terms( get_the_ID(), 'taxonomy' ) as $term )
{
    printf( '%s (%s)', $term->name, $term->count );
}
16 ott 2012 14:41:01
0

Un altro modo semplice per farlo è utilizzare get_terms. Io uso questo metodo quando ho bisogno di visualizzare un elenco di categorie E devo ignorare una categoria che ha un numero minimo prefissato di articoli.

 $cats = get_terms('category');
 foreach($cats as $cat){
     if($cat->count > 15){
     //fai qualcosa qui, ad esempio visualizza il nome della categoria       
     //echo 'nome categoria : ' .$cat->name;
     }
 }
4 apr 2020 07:00:05