dimecres, 22 de octubre del 2008Aconseguir el nombre d’entrades en una categoria
Com segurament sabreu si heu retocat una miqueta el tema del vostre blog, WordPRess incopora una funció, wp_list_categories, que serveix per a fer una llista personalitzable de les categories que tenim. Una característica d’aquesta funció que a mi m’agrada molt és que permet veure, entre parèntesis, el nombre d’entrades que hi ha dins d’una categoria.
Fa un temps, em vaig trobar amb la necessitat de tenir només el nombre d’entrades d’una categoria. Vaig intentar fer servir la funció wp_list_categories, però no ho vaig aconseguir, perquè sempre em sortia el nom de la categoria i no el podia treure.
Ara, però, ja sé com fer-ho: amb una consulta SQL. Entre les bases de dades de WordPRess n’hi ha una que es diu terms, on trobem la ID de cada terme, el tipus i el nombre d’elements que conté. Aquí dins s’hi guarden categories tant d’entrades com d’enllaços. Llavors, només hem de fer una consulta demanant el valor de la columna count, que és on es guarden els nombres d’elements que contenen els termes. Jo he fet servir aquest codi:
< ?php $numposts1 = $wpdb->get_var("SELECT count FROM $wpdb->term_taxonomy WHERE term_taxonomy_id = '1'"); if (0 < $numposts1) $numposts1 = number_format($numposts1); echo $numposts1; ?>
Aquest codi el col·loco directament on vull veure el nombre d’entrades de la categoria 1, en aquest cas. Per canviar la categoria de la que voleu veure el nombre d’entrades, simplement canvieu term_taxonomy_id = ‘1‘ per la ID de la categoria que vulgueu. Per exemple, si voleu veure els de la categoria 22, quedaria term_taxonomy_id = ‘22‘.
Recordeu que per a saber la ID d’una categoria, la manera més fàcil és editar la categoria en qüestió i fixar-se en la URL. D’allà hem d’extreure l’últim número. Per exemple, jo vull editar la categoria WordPress 2.7 d’aquest blog. La URL que se’m genera és aquesta: http://www.wordpresscat.com/wp-admin/categories.php?action=edit&cat_ID=78. Per tant, la ID de la categoria seria 78.
Espero que us serveixi! Recordeu que podeu fer servir aquest codi per moltes coses, si l’editeu correctament.
