Come ottenere il titolo di una categoria in un loop personalizzato?
Sto usando il seguente codice per visualizzare un elenco di post all'interno di una categoria, ma vorrei mostrare il titolo nel suo tag h2 sopra l'elenco.
<ul class="subcats-list">
<?php
$weightloss = new WP_Query();
$weightloss->query('showposts=5&include=4');
while ($weightloss->have_posts()) : $weightloss->the_post(); ?>
<li><a href="<?php the_permalink() ?>" rel="bookmark"><?php the_title(); ?></a></li>
<?php endwhile; ?>
</ul><!-- subcat -->
MODIFICA:
Ho provato a usare single_cat_title
, tuttavia il titolo che viene visualizzato è quello della categoria genitore per tutti i div delle sottocategorie. Ecco un esempio di div che sto replicando più volte, dove la query estrae post da diverse sottocategorie. Vorrei che il titolo di ogni sottocategoria apparisse sopra i relativi post. Capisco che non funzioni perché la funzione restituisce la categoria genitore, ma non riesco a capire come risolvere con php...
<ul class="subcats-list">
<h2 class="subcats-title"><?php single_cat_title(); ?></h2>
<?php
$weightloss = new WP_Query();
$weightloss->query('showposts=5&cat=4');
while ($weightloss->have_posts()) : $weightloss->the_post(); ?>
<li><a href="<?php the_permalink() ?>" rel="bookmark"><?php the_title(); ?></a></li>
<?php endwhile; ?>
</ul><!-- subcat -->
Dato che hai già l'ID della categoria (lo usi nella tua chiamata a WP_Query::query()
), puoi semplicemente usarlo per richiedere il nome della categoria. get_cat_name( $cat_id )
farà esattamente questo. Utilizza in background get_category( $cat_id )
, che restituisce l'oggetto categoria completo, il che può essere utile se vuoi mostrare maggiori informazioni sulla categoria.

Non è del tutto chiaro a cosa ti riferisci, hai chiesto come ottenere il titolo della categoria all'interno di un loop personalizzato. Ti riferisci a una categoria specifica o a una categoria associata a un determinato post all'interno di quel loop?
In ogni caso, se ti riferisci a stampare il nome della prima categoria per ogni post nel tuo loop personalizzato, aggiungi semplicemente il seguente codice da qualche parte all'interno del tuo loop.
<?php single_cat_title(); ?>
La documentazione per la funzione si trova qui:
http://codex.wordpress.org/Function_Reference/single_cat_title
Tuttavia, nota il commento sotto la tua domanda, è un punto valido: cosa intendevi fare con il parametro include
, stai cercando di filtrare quella query a un particolare insieme di post?
Puoi trovare i parametri validi per la query nella pagina del codex di WP_query
, se può esserti utile. Se non sei sicuro su come impostare i parametri, faccelo sapere.. ;)

Proverò a farlo. Aveva ragione riguardo all'include. Quello è stato un mio errore.

Quindi ho provato, tuttavia, il titolo viene mostrato dalla categoria genitore per tutti i div delle sottocategorie. Ecco un esempio di due div, dove la query recupera post da due diverse sottocategorie. Vorrei che il titolo di ogni sottocategoria apparisse sopra i relativi post.
