WordPress: creare un Loop di post nella sidebar

La sidebar di WordPress può essere usata anche per visualizzare i nostri post e non solo per contenere informazioni aggiuntive o widget. Il problema è che ad oggi non esiste ancora un metodo tramite hook per agganciarsi al codice della sidebar e aggiungere del contenuto. Dobbiamo quindi inserire manualmente il nostro codice nel file sidebar.php. In questo articolo vedremo come creare un elenco di post sotto forma di thumbnail.

Il codice è semplice: scegliamo una categoria e il numero di post da visualizzare, quindi lanciamo il Loop. Definiamo il seguente codice nel file functions.php:

[php htmlscript="true"] <?php function display_sidebar_posts() { $query = new WP_Query(array('cat'=> 17, 'posts_per_page'=> 5)); if($query->have_posts()) { ?> <ul id="sidebar-posts"> <?php while($query->have_posts()) { $query->the_post(); $id = get_the_ID(); $title = get_the_title(); ?> <li> <a href="<?php the_permalink();?>" title="<?php the_title();?>"> <?php echo get_the_post_thumbnail($id, array(150,150), array('title' => $title));?> </a> </li> <?php } ?> </ul> <?php } wp_reset_postdata(); } ?>

Quindi richiamiamo la nostra funzione all'interno del file sidebar.php:


<?php display_sidebar_posts();?>

State sempre attenti a inserire il vostro codice fuori dalle aree destinate ai widget perchè potreste andare incontro a svariati problemi.

Aggiornamento

Il sempre attento Maurizio mi ha fatto notare che:

Una tecnica in tal senso viene descritta in questo articolo.

Torna su