Come determinare se una categoria è vuota?

26 gen 2011, 00:38:06
Visualizzazioni: 5.15K
Voti: 3

Esiste una funzione o una chiamata esistente in cui puoi passare un ID di categoria per determinare se la categoria ha articoli figli?

0
Tutte le risposte alla domanda 1
3

La funzione get_term() accetta un ID del termine e uno slug della tassonomia. Restituisce un oggetto che contiene un "count" per quel termine.

$obj_term = get_term(123, 'your-taxonomy-slug');
echo $term->count;

Non sono a conoscenza di alcuna funzione di utilità che conti solo i post in una particolare categoria.

26 gen 2011 01:12:03
Commenti

Grazie! Ho anche pensato di usare $obj= get_posts('category=n'); if($obj) {//ha figli!}. Uno dei due è più costoso in termini di risorse dell'altro?

Scott B Scott B
26 gen 2011 02:08:14

@Scott B - Penso che get_term() sia probabilmente più veloce. Entrambi eseguono query al database, ma get_posts() lo fa inizializzando un nuovo oggetto wp_query e chiamando il metodo query, che esegue tutta una serie di logiche e sembra piuttosto indiretto per le informazioni che stai cercando di ottenere. Se vuoi l'opzione più veloce, potresti valutare di creare la tua funzione utility? Sarebbe abbastanza banale eseguire semplicemente una query COUNT, credo. Sono abbastanza sorpreso che non ci sia una funzione per questo nel core!

MathSmath MathSmath
26 gen 2011 02:32:24

Funziona perfettamente. Ho una lista di "Post Correlati" in fondo alle pagine delle categorie, ma dal momento che permetto l'opzione di mostrare categorie vuote, sto racchiudendo il div che contiene la lista di link in questo wrapper per verificare la presenza di post figli.

Scott B Scott B
26 gen 2011 04:49:39