Come mostrare i post di una certa categoria nella sidebar di un blog Wordpress (Asides).
Nei temi WordPress, per mostrare nella sidebar l’elenco degli ultimi X post, si usa la funzione <?php wp_get_archives(); ?>.
Questa funzione elenca solo il titolo di ogni post. Non è possibile inserire il contenuto o il riassunto come invece avviene nella parte principale della pagina, il content.
Questo è dovuto al fatto che generalmente, nei vari temi costruiti per WordPress, la sidebar non fa parte del Loop, che sarebbe quel ciclo che permette di ripetere per N volte il codice che estrapola dal database tutti i dati del singolo post.
Per risolvere il problema si potrebbe inserire la sidebar o la prima funzione della sidebar, all’interno del Loop (in teoria, in pratica non ho idea se la cosa sia fattibile), o più semplicemente cercare un plugin adatto allo scopo, scelta più semplice.
I plugin che ho trovato sono Sideblog e MiniPosts. Il primo permette di scegliere una o più categorie da contrassegnare come Asides e di mostrare tutti i post inseriti in queste categorie nella sidebar. Il secondo invece aggiunge la possibilità di marcare i singoli post come MiniPosts, e consente anche una diversa formattazione dei MiniPosts.
Con queste modifiche possiamo quindi creare una categoria speciale i cui post vengono mostrati nella sidebar (Asides) e esclusi dal resto del blog.
Per chi non vuole usare plugin ma preferisce modificarsi il codice, un paio di hack si trovano in questa pagina sul sito di WordPress, e un’altro in quest’altro sito.
Esempio di Asides:
<?php
global $post; $myposts = get_posts('numberposts=3&category=15');
foreach($myposts as $post) : setup_postdata($post);
?>
<strong><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a></strong> <?php the_excerpt(); ?>
<?php endforeach; ?>
Inserendo questo codice nella sidebar visualizzeremo gli ultimi 3 post della categoria 15. Entrambi sono modificabili, come anche il contenuto da visualizzare dopo il titolo, in questo caso il riassunto the_excerpt, sostituibile con il contenuto the_content.
Articoli Simili:
Nessun articolo correlato
