Numără câte articole sunt în categorie

24 iun. 2011, 21:22:54
Vizualizări: 62.6K
Voturi: 6

Iată ce încerc să fac:

dacă numărul de articole este mai mare de 20 -> afișează link către o altă pagină (care arată toate articolele) dacă numărul de articole este mai mic de 20 -> nu afișa linkul

Până acum am reușit să returnez numărul de articole folosind

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

dar nu știu cum să continui de aici, aveți sugestii?

0
Toate răspunsurile la întrebare 3
0
20

Dacă îmi amintesc corect, numărul de articole din categorie este stocat persistent în obiectul categoriei. Așadar, folosește get_category() sau o variație a acesteia și preia numărul din obiect.

Exemplu de cod (netestat):

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

if( $count > $something ) {

    // acțiuni
} 
24 iun. 2011 22:05:00
0

Puteți accesa aceasta direct din obiectul în sine:

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

o altă metodă simplă de a face acest lucru este folosind get_terms. Folosesc această abordare atunci când am nevoie să afișez o listă de categorii ȘI trebuie să ignor o categorie care are un număr minim setat de articole.

 $cats = get_terms('category');
 foreach($cats as $cat){
     if($cat->count > 15){
     //fă ceva aici, de exemplu afișează numele categoriei       
     //echo 'nume categorie : ' .$cat->name;
     }
 }
4 apr. 2020 07:00:05