
Modifiquei mais uma vez o script do widget de posts recentes. Para facilitar a customização transformei a tabela em uma lista de ítens. Isso permite que o widget fique na horizontal ou na vertical, de acordo com a preferência do usuário.
Também acrescentei uma query "start-index" para que você possa escolher quais os posts recentes a serem mostrados e retirei as variáveis de data e comentários que estavam sendo pouco usadas. Assim o código ficou mais enxuto e pode ser colocado diretamente no template.
Veja o código completo:
<div id='recent-posts'>
<h2> Posts Recentes </h2>
<script type='text/javascript'>
imgr = new Array();
imgr[0] = "http://endereço-de-sua-imagem-substituta";
showRandomImg = true;
imgwidth = 100;
imgheight = 100;
summaryPost = 0;
startpost = 1;
numposts = 6;
home_page = "<data:blog.homepageUrl/>";
</script>
<script type='text/javascript'>
//<![CDATA[
// <!-- Based on a Script by Anhvo http://www.vietwebguide.com/ -->
// <!-- Modified by BloggerSPhera - www.bloggersphera.com/ -->
// <!-- Recent Posts with Thumbnail for Blogger Blogs -->
// <!-- bloggersphera-version 7 - script showing posts in a unordered list -->
function removeHtmlTag(strx,chop){
var s = strx.split("<");
for(var i=0;i<s.length;i++){
if(s[i].indexOf(">")!=-1){
s[i] = s[i].substring(s[i].indexOf(">")+1,s[i].length);
}
}
s = s.join("");
s = s.substring(0,chop-1);
return s;
}
function showrecentposts(json) {
document.write('<ul id="rec_posts">');
j = (showRandomImg) ? Math.floor((imgr.length+1)*Math.random()) : 0;
img = new Array();
for (var i = 0; i < numposts; i++) {
var entry = json.feed.entry[i];
var posttitle = entry.title.$t;
var posturl;
if (i == json.feed.entry.length) break;
for (var k = 0; k < entry.link.length; k++) {
if (entry.link[k].rel == 'alternate') {
posturl = entry.link[k].href;
break;
}
}
if ("content" in entry) {
var postcontent = entry.content.$t;}
else
if ("summary" in entry) {
var postcontent = entry.summary.$t;}
else var postcontent = "";
if(j>imgr.length-1) j=0;
img[i] = imgr[j];
s = postcontent ; a = s.indexOf("<img"); b = s.indexOf("src="",a); c = s.indexOf(""",b+5); d = s.substr(b+5,c-b-5);
if((a!=-1)&&(b!=-1)&&(c!=-1)&&(d!="")) img[i] = d;
var item = '<li class="rec_thumbs"><a href="'+posturl+'"><img src="'+img[i]+'" width="'+imgwidth+'" height="'+imgheight+'"/></a><span><a href="'+posturl+'">'+posttitle+'</a> '+removeHtmlTag(postcontent,summaryPost)+'...</span></li>';
if(summaryPost == 0) { item = '<li class="rec_thumbs"><a href="'+posturl+'"><img src="'+img[i]+'" width="'+imgwidth+'" height="'+imgheight+'"/></a><span><a href="'+posturl+'">'+posttitle+'</a></span></li>'; }
document.write(item);
j++;
}
document.write('</ul>');
}
document.write("<script src=""+home_page+"feeds/posts/default?max-results="+numposts+"&start-index="+startpost+"&orderby=published&alt=json-in-script&callback=showrecentposts"></script>");
//]]>
</script>
<div class='clear'/>
</div>
Se não conseguir copiar, veja a página com o código no link abaixo:
Código Posts Recentes
Copie o código e cole em seu template no local onde quer o Widget.
Por exemplo, se quer o widget em sua sidebar:
- Em "Layout" - "Editar HTML" - deixe a caixinha "Expandir Modelos de Widgets" desmarcada;
- Procure o trecho referente à sidebar:
<div id='sidebar-wrapper'>
- Abaixo dessa linha, cole todo o código do link. Já modifiquei o script de modo que não seja necessário colocar a url de seu blog;
- Altere o endereço da imagem substituta (imagem que será mostrada quando algum post não possuir imagens);
- Acerte as medidas das imagens conforme sua preferência;
- Quem ainda não conhece esse widget, consulte os outros posts a respeito;
- Em "startpost" você define se quer que os posts apareçam do último post para trás (startpost = 1;), do penúltimo para trás (startpost = 2;), do antepenúltimo para trás (startpost = 3;), etc...
- Em "numpost" define o número de posts que quer mostrar;
- Visualize o template e estando tudo ok, salve
Para aplicar estilos à lista você pode utilizar as "ids" e "class" definidas no script:
<div id='recent-posts'> <ul id="rec_posts"> <li class="rec_thumbs"> <span> (para os textos)
Em próximo post darei algumas dicas para estilos.













19 Opiniões sobre Widget de Posts Recentes em forma de lista
Oie! Seu blog tá bem legal! Eu tenho uma dúvida. Tentei mudar o favicon do meu antigo blogspot usando um código que encontrei mas não deu certo. Antes dava certo, mas não mais... O que será isso?
Bom dia Rô!
Não estou conseguindo colocar este widget. Quando salvo, desaparece do código html a parte "/script" lá no final do código, antes de "/div"; e quando visualizo só aparece esta imegem: //]]>. Também não entendi direito como colocá-lo na vertical.
George
Oi blogueira. Precisando da sua juda de novo. Segui um tutorial (link:templatesparanovoblogger.blogspot.com/2009/02/colocando-um-slide-no-blog.html) para fazer um slide para o blog de um amigo (blog: idepenart.blogspot.com). O slide ficou ok no Firefox e em antigas versões do IE, mas na nova versão do IE não ficou legal. Ficou pela metade. O que eu faço para ajeitar? Ficarei grata se puder ajudar. A Paz.
Olá Rô,
Aqui no Blogger'SPhera cada clique é um aprendizado.
Muito obrigada por compartilhar seu conhecimento conosco.
Grande beijo no seu coração,
Aú
Estou aqui para fazer-lhe uma proposta, que eu considero interessante.Também sou TOP 100 e estou concorrendo na categoria “VARIEDADES” e estou na campanha “UM VOTO POR UM VOTO”.O legal disso tudo é essa interação,eu conheço seu blog e vc, o meu.Já votei no seu e sei que também que receberei seu voto.
Estou te seguindo e se quiseres me seguir, ficarei honrada.Venha apanhar um brinde, com assinatura de um design.Sua presença é muito importante para nós.
Obrigada
Oi, estou passando pra conhecer seu blog, e desejar boa tarde
bjsss
aguardo sua visita :)
Pronto agora sim .. eu tinha achado o template anterior muito feiu meo , dicupa mas eu axei .. agora sim .. este aki esta clean
lindão sinceramente
adorei o efeito no menu la em cima =D
agora so falta vc voltar :'(
a conbinação de cores o degrade ... tanto nas pagina inicial como nas internas tudo bem conbinado e tudo
Noss
Parabens , esta muito bom
de seu fã \o/
Nina:
1) Sobre o FAVICON: veja o artigo aqui no BloggerSPhera sobre FAVICON. Todos que instalaram dessa maneira que ensinei relataram que deu certo.
2) Quanto ao Slide: diferença entre browsers é complicado mesmo. O jeito é ir na tentativa e erro.
George: Eu vou transferir esse código para um arquivo anexo, pois ao fazer o "parse" para colocar o código no post alguns sinais não ficam corretos. Também vou ensinar alguns estilos para o widget. Me aguarde um pouquinho, tá? :)
Áurea: Obrigada! Você sempre muito gentil! Beijo grande!!
Kinha: Grata pelo convite. Fiquei um bom tempo "fora do ar" e acredito que a premiação já foi faz tempo hehe. De qualquer forma, agradeço!
Dri: Obrigada e beijos prá você!
Marcos: Acho que é o Gama, né? :) Tô voltando, devagarinho, mas tô... Já arrumei um tempo prá ajeitar o template que estava simplesmente horrrrrrível... hehe Volto com algumas novidades assim que colocar a casa (e a vida) em ordem. Beijo grande e também sou sua fã (adorei o Cine HQ, parabéns!! :d)
Ah obrigado !!
=D sim sou eu \o/ !
Não está funcionando. Apenas escreve
");
//]]>
Será que pode me ajudar???
Tenho o blog: www.veneraveis-criaturas.blogspot.com lá eu tenho o gadget chamado "Gil's Daily - Um canto especial", o qual eu vou escrevendo, a cada dia ou semana ou etc., bom só que esta lista ficou muito grande queria transformá-la de forma que podesse separar em forma de tópicos que era só a pessoa clicar e ir para onde queria, sei que tem uma forma só não sei qual é se poder me ajudar ficarei grato. muito mesmo.
abs.
Gil
Hani: Já substituí o código no post. Tente novamente :d
Gil: Você pode fazer várias listas de links e colar em gadgets HTML/Java Script, ou usar o próprio gadget de lista de links para dividir seus links em tópicos.
Espero ter ajudado!
Oi Rô!
Estou seguindo seus tutoriais sobre postagens recentes. Primeiro fiz o simples, na vertical, como lista. Até antes da chuva, ele funcionava, apenas não apareciam as imagens aleatórias, imagino que por alguma mancada minha. Ontem passei o dia sem energia elétrica, e hoje já não aparecia mais nada. Então quis usar este aqui, mas o link "código posts recentes" citado acima leva a uma página em branco, apenas com um título. Pode me ajudar (mais ainda...)? Obrigada, e parabéns por ser tão didática.
Oi! Mais uma vez obrigada, vc foi rápida no gatilho! Bem, leio e releio todas as suas postagens sobre widgets recentes, widget por ategoria, etc. A pressa é inimiga da perfeição, confesso que a vontade de colocar logo o blog no ar faz com que eu não estude as lições de html e css, então brotam como cogumelos na chuva questões como estas:
a)Desta vez não precisaremos de 5 imagens aleatórias, mas apenas 1, certo?
b)Este script eu coloco dentro do gadget, no lugar do que eu fiz ao seguir o tutorial "Posts recentes com Imagens";
c)Aquele arquivo que hospedei, recentposts_thumb.js, esqueço por lá?
d)Eu quero usar a idéia de tua postagem "widgets diferentes para cada página" e colocar na página principal o widget de postagens recentes com thumbs. Já em páginas "secundárias", o widget de postagens recentes por categoria. Acontece que cada página secundária com sua própria categoria. Esta lista de ifs que vou ter que fazer, e este número grande de widgets, apesar de exibidos em páginas diferentes, tornarão o blog uma carroça? (Se for assim é melhor eu desencanar e pensar em outra coisa...).
Abraços, e bom final de semana!
Minha cara:
Inclui bonitinho, no lugar certinho...
Aparecia um "lixo" após o título "posts recentes": ");//]]>
Apesar de não conhecer Java nem nada além de linguagens mortas há anos, com a ajuda de um editor HTML (MAX's HTML Beauty ++2004) deduzi que havia um ">" a mais, no final da quarta linha de baixo pra cima, que começa por "document.write". No último script. (Ele não deve ser fechado com ">", assim como o primeiro não foi).
Não dá pra reproduzir a linha aqui neste comentário, mas você vai achar.
Bom, agora o "lixo" não aparece, mas tampouco as postagens recentes. Não sei se fiz certo,mas continuarei tentando...
Abraços,
Amiga...
(Já fiquei íntima, rsrsrs...)
Nada feito.
Primeiro, dissequei meu blog, coloquei comentários de cabo a rabo p/ me localizar, em cada início e cada fim de div id, e acertei toda a indentação dos IFs(exceto CSS pq ainda não conheço nem o cheiro da hierarquia). Não é trabalho perdido, pelo contrário.
Mas não consigo fazer a listagem com imagens aparecer. Para fechar o micro por hoje deixei 3 versões lá no blog: a versão posts recentes com imagens, alterando a hospedagem p/ o 4shared.com; a desta página; e o gadget do próprio google (que não tem imagem). Só funcionou a última opção, as outras exibem apenas os seus títulos. Ainda bem que eu "fotografei" a tela no dia que funcionou, se não nem eu acreditaria. Estão lá no www.montarsalao.blogspot.com.
Boa noite!!
Cris: Tente uma coisa prá gente ver se dá certo - na linha 12, substitua aquele código por:
home_page = "http://endereço do seu blog/";
Se ainda não der certo, vou fazer um outro tutorial pra colocar o widget em um gadget HTML. Tenho colocado do jeito que está aqui em vários templates, mas não sei se o parseamento aqui no post está alterando alguma coisa (já fucei de monte, mas os olhos cansam.. hehe), ou se depende do restante dos códigos de cada template.
Faça essa tentativa e me avise, ok?
Beijão!
so aparece isso quando salvo "); //]]>
Olá! Ainda não testei como vc falou, não deu tempo. Mas de qq forma, graças as suas dicas criei uma página inicial fixa, e uso e abuso dos ifs, tá ficando tudo muito chique.
Eu realmente gostaria muito de conseguir fazer estes widgets com thumbs dos marcadores, mas acho que tenho que comer mais arroz com feijão, rs.
Mais uma vez, obrigada,
bjs.
Postar um comentário
Para deixar o link da sua última postagem coloque este código:
<em><strong>Seu nome</strong> publicou um post sobre.. <a href="seu-link-do-último-post">Título do Post</a></em>
Quando você estiver testando algum hack e tiver dúvidas sobre ele, informe:
1 - O endereço do blog onde você está testando (ou instalando o hack);
2 - O navegador que você está usando (Firefox, Opera, IExplorer, etc).
Leia sobre a política de Comentários!
Eu gosto de conhecer meus leitores! Se você usar OpenId ou perfil fechado, assine o comentário com seu nome e me deixará muito contente!
Bem-vindos e obrigada pela visita!