Widget post casuali per Blogger


Dal momento che i blog si presentano nella loro struttura naturale come un diario, mettono in evidenza solo le notizie più recenti, trascurando in questo modo gli articoli più vecchi. I nuovi visitatori solitamente leggono l'articolo per cui hanno fatta la ricerca su Google e al massimo cliccano sui titoli dei post correlati perché si trovano sotto o comunque nelle vicinanze dell'articolo stesso.
Tuttavia esiste un modo per riportare l'attenzione dei lettori verso gli articoli più datati attraverso il widget degli articoli casuali che si può posizionare comodamente nella sidebar.
Questo widget visualizza un elenco di post a caso del vostro blog, un metodo estremamente utile se si scrivono articoli che possono essere utili anche col passare del tempo.

Per installare i post casuali su Blogger dovete andare su Layout > Aggiungi un gadget > HTML/Javascript ed incollare il seguente codice:

<style>
#post-casuali img{border-radius: 10px;float:left;margin-right:5px;
width:75px;height:75px;background-color: #F7F7F7;padding: 3px;transition: all 0.3s linear 0s;}
#post-casuali img:hover{opacity: 0.6;}
ul#post-casuali {list-style-type: none;padding: 0px;}
#post-casuali a {font-size: 16px; padding: 0px auto 5px;}
#post-casuali a:hover {text-decoration: none;}
.rp-snippet {font-size: 12px; text-align:justify; background: none; padding: 4px; margin-right: 6px;}
#post-casuali span {}
#post-casuali li {margin-bottom: 10px;border-bottom: 1px solid #ddd; padding: 4px;}
</style>
<ul id='post-casuali'>
<script type='text/javaScript'>
var rdp_numposts=5;
var rdp_snippet_length=80;
var rdp_info='yes';
var rdp_comment='Commenti';
var rdp_disable='Commenti Disabilitati';
var rdp_current=[];var rdp_total_posts=0;var rdp_current=new Array(rdp_numposts);function totalposts(json){rdp_total_posts=json.feed.openSearch$totalResults.$t}document.write('<script type=\"text/javascript\" src=\"/feeds/posts/default?alt=json-in-script&max-results=0&callback=totalposts\"><\/script>');function getvalue(){for(var i=0;i<rdp_numposts;i++){var found=false;var rndValue=get_random();for(var j=0;j<rdp_current.length;j++){if(rdp_current[j]==rndValue){found=true;break}};if(found){i--}else{rdp_current[i]=rndValue}}};function get_random(){var ranNum=1+Math.round(Math.random()*(rdp_total_posts-1));return ranNum};
</script>
<script type='text/javaScript'>
function post_casuali(json){for(var i=0;i<rdp_numposts;i++){var entry=json.feed.entry[i];var rdp_posttitle=entry.title.$t;if('content'in entry){var rdp_get_snippet=entry.content.$t}else{if('summary'in entry){var rdp_get_snippet=entry.summary.$t}else{var rdp_get_snippet="";}};rdp_get_snippet=rdp_get_snippet.replace(/<[^>]*>/g,"");if(rdp_get_snippet.length<rdp_snippet_length){var rdp_snippet=rdp_get_snippet}else{rdp_get_snippet=rdp_get_snippet.substring(0,rdp_snippet_length);var space=rdp_get_snippet.lastIndexOf(" ");rdp_snippet=rdp_get_snippet.substring(0,space)+"&#133;";};for(var j=0;j<entry.link.length;j++){if('thr$total'in entry){var rdp_commentsNum=entry.thr$total.$t+' '+rdp_comment}else{rdp_commentsNum=rdp_disable};if(entry.link[j].rel=='alternate'){var rdp_posturl=entry.link[j].href;var rdp_postdate=entry.published.$t;if('media$thumbnail'in entry){var rdp_thumb=entry.media$thumbnail.url}else{rdp_thumb="//lh5.googleusercontent.com/-rZ9vcw5qLjk/U_8ttW1Qv5I/AAAAAAAAYoU/vCrK-BluK7k/h120/no-immagini.jpg"}}};document.write('<li>');document.write('<a href="'+rdp_posturl+'" rel="nofollow"><img alt="'+rdp_posttitle+'" src="'+rdp_thumb+'"/></a>');document.write('<div><a href="'+rdp_posturl+'" rel="nofollow" title="'+rdp_snippet+'">'+rdp_posttitle+'</a></div>');if(rdp_info=='yes'){document.write('<span><div  class="rp-info">'+rdp_postdate.substring(8,10)+'/'+rdp_postdate.substring(5,7)+'/'+rdp_postdate.substring(0,4)+' - '+rdp_commentsNum)+'</div></span>'};document.write('<br/><div class="rp-snippet">'+rdp_snippet+'</div><div style="clear:both"></div></li>')}};getvalue();for(var i=0;i<rdp_numposts;i++){document.write('<script type=\"text/javascript\" src=\"/feeds/posts/default?alt=json-in-script&start-index='+rdp_current[i]+'&max-results=1&callback=post_casuali\"><\/script>')};
</script>
</ul>

Il risultato finale sarà un elenco di 5 post casuali, con data, numero di commenti, ed immagine qualora dovesse essere presente, altrimenti apparirà una immagine di default con scritto "Sorry, no image, available".


Personalizzazioni

Come potete notare nel codice stesso ci sono alcuni elementi evidenziati in rosso e sono quelli che potete modificare. Per esempio la larghezza e l'altezza dell'immagine di anteprima (width e height), il font e la dimensione del titolo, il numero dei post da mostrare, la lunghezza dello snippet (descrizione del post) che si può anche eliminare modificando rdp_info='yes'; in rdp_info='no'; .
Anche l'url dell'immagine di default che appare quando non ne è presente nessuna dentro il post potete sostituirla con qualche altra immagine.

Per concludere, aggiungo anche che questo è uno dei pochi widget per visualizzare i post casuali che funziona, altri che ho visto su internet dopo alcuni test ho notato che rallentano di molto o addirittura bloccano il regolare caricamento del blog. Cercate in ogni caso di non esagerare con il numero di post casuali da visualizzare impostando un numero non superiore a 6 post.



2 commenti :

  1. ciao ho inserito il codice e mi compaiono i post casuali sulla pagina, solo che la descrizione mi esce in linguaggio HTML e non come una normale descrizione di testo; potresti darmi qualche suggerimento per risolvere questo problema? grazie e complimenti per il sito :)

    RispondiElimina
    Risposte
    1. non saprei, su due diversi blog mi funziona. Se ti da' problemi la descrizione puoi sempre eliminarla come descritto nell'articolo o ridurre/aumentare il numero dei caratteri.

      Elimina

I commenti dovranno prima essere approvati da un amministratore. Verranno pubblicati solo quelli utili a tutti e attinenti al contenuto della pagina. Per commentare utilizzate un account Google/Gmail, altrimenti la modalità "anonimo".