Testando post <teste> <s>teste</s> <blockquote>aasassa</blockquote> Eita... negrito... itálico... Figura acim.a
Quem me Linka
g
segunda-feira, 13 de abril de 2009
Teste
sábado, 11 de outubro de 2008
Paginação dos Posts por Gadget!!!
Esse é o blog de testes do aBuzzado.com.br, por favor, não leve nada a sério.
Já que estamos aqui, vamos trabalhar:
Um recurso muito desejado por milhares de usuários do Blogger era a paginação de Posts:

Desaparecendo de vez com o "Próximo" e "Anterior", modelo que muitas pessoas (entre elas eu) odeiam.
O código JS desenvolvido pelo Mohamed Rias, foi largamente utilizado no mundo Blogspot a fora, sendo citado pela Amanda do BloggerBuster e pela Rô do Blog a La Carte.
E o melhor de tudo é que esse recurso pode ser facilmente implementado por Gadget! O que convenhamos é muito bom e facilita inclusive a vida de iniciantes.
Então mãos a massa:
Primeiro - BackUp: SALVE SEU TEMPLATE! SEMPRE!
Segundo - Verificação: Procure pelo seguinte trecho no seu código HTML (ou similar):
[b:section class='main' id='main' maxwidgets='1' showaddelement='no']
[b:widget id='Blog1' locked='false' title='Postagens no blog' type='Blog'/]
(As chaves "[ ]" foram usadas no lugar de "< >").
O trecho em negrito indica a quantidade de widgets possíveis no seu "Main" (em outras palavras, quantos widgets você pode ter acima ou abaixo dos seus posts).
Como suas postagens são consideradas 1 widget (de id="Blog1" nesse exmplo), você deve ter essa valor alterado para 2. Isso permite que tenhamos o script logo abaixo (ou acima) dos posts.
Mude também o campo "ShowAdElement" para "yes", assim você poderá adicionar o widget diretamente lá.
Visualize e se tudo estiver em ordem, salve. Você não deve ter visto nenhuma mudança no seu blog até aqui.
Terceiro - Inserindo o Widget: Vá em Layout -> Elementos de Página.
Clique em "Adicionar um Gadget" (localizado acima de "Postagens no Blog") e escolha "HTML/Javascript".
Deixe o título em branco, e adicione o seguinte texto em "Conteúdo":
<style>
.showpageOf {
text-decoration:none;
padding:3px;
margin: 0 3px 0 0;
}
.showpageArea a {
text-decoration:underline;
color: #000000;
line-height: 2.5em;
}
.showpageArea a:hover {
border: 1px solid #ccc;
background-color:#ccc;
}
.showpageNum a {
text-decoration:none;
border: 1px solid #ccc;
margin:0 3px;
padding:3px;
}
.showpageNum a:hover {
border: 1px solid #ccc;
background-color:#ccc;
}
.showpagePoint {
color:#333;
text-decoration:none;
border: 1px solid #ccc;
background: #ccc;
margin:0 3px;
padding:3px;
}
.showpage a {
text-decoration:none;
border: 1px solid #ccc;
padding:3px;
}
.showpage a:hover {
text-decoration:none;
}
.showpageNum a:link,.showpage a:link {
text-decoration:none;
color:#333;
}
</style>
<script type="text/javascript">
function showpageCount(json) {
var thisUrl = location.href;
var htmlMap = new Array();
var isFirstPage = thisUrl=="http://seusite.blogspot.com/";
var isLablePage = thisUrl.indexOf("/search/label/")!=-1;
var isPage = thisUrl.indexOf("/search?updated")!=-1;
var thisLable = isLablePage ? thisUrl.substr(thisUrl.indexOf("/search/label/")+14,thisUrl.length) : "";
thisLable = thisLable.indexOf("?")!=-1 ? thisLable.substr(0,thisLable.indexOf("?")) : thisLable;
var thisNum = 1;
var postNum=1;
var itemCount = 0;
var fFlag = 0;
var eFlag = 0;
var html= '';
var upPageHtml ='';
var downPageHtml ='';
var pageCount=5;
var displayPageNum=3;
var firstPageWord = 'First';
var endPageWord = 'Last';
var upPageWord ='Previous';
var downPageWord ='Next';
var labelHtml = '<span class="showpageNum"><a href="/search/label/'+thisLable+'?&max-results='+pageCount+'">';
for(var i=0, post; post = json.feed.entry[i]; i++) {
var timestamp = post.published.$t.substr(0,10);
var title = post.title.$t;
if(isLablePage){
if(title!=''){
if(post.category){
for(var c=0, post_category; post_category = post.category[c]; c++) {
if(encodeURIComponent(post_category.term)==thisLable){
if(itemCount==0 || (itemCount % pageCount ==(pageCount-1))){
if(thisUrl.indexOf(timestamp)!=-1 ){
thisNum = postNum;
}
postNum++;
htmlMap[htmlMap.length] = '/search/label/'+thisLable+'?updated-max='+timestamp+'T00%3A00%3A00%2B08%3A00&max-results='+pageCount;
}
}
}
}//end if(post.category){
itemCount++;
}
}else{
if(title!=''){
if(itemCount==0 || (itemCount % pageCount ==(pageCount-1))){
if(thisUrl.indexOf(timestamp)!=-1 ){
thisNum = postNum;
}
if(title!='') postNum++;
htmlMap[htmlMap.length] = '/search?updated-max='+timestamp+'T00%3A00%3A00%2B08%3A00&max-results='+pageCount;
}
}
itemCount++;
}
}
for(var p =0;p< htmlMap.length;p++){
if(p>=(thisNum-displayPageNum-1) && p<(thisNum+displayPageNum)){
if(fFlag ==0 && p == thisNum-2){
if(thisNum==2){
if(isLablePage){
upPageHtml = labelHtml + upPageWord +'</a></span>';
}else{
upPageHtml = '<span class="showpage"><a href="/">'+ upPageWord +'</a></span>';
}
}else{
upPageHtml = '<span class="showpage"><a href="'+htmlMap[p]+'">'+ upPageWord +'</a></span>';
}
fFlag++;
}
if(p==(thisNum-1)){
html += ' <span class="showpagePoint"><u>'+thisNum+'</u></span>';
}else{
if(p==0){
if(isLablePage){
html = labelHtml+'1</a></span>';
}else{
html += '<span class="showpageNum"><a href="/">1</a></span>';
}
}else{
html += '<span class="showpageNum"><a href="'+htmlMap[p]+'">'+ (p+1) +' </a></span>';
}
}
if(eFlag ==0 && p == thisNum){
downPageHtml = '<span class="showpage"> <a href="'+htmlMap[p]+'">'+ downPageWord +'</a></span>';
eFlag++;
}
}//end if(p>=(thisNum-displayPageNum-1) && p<(thisNum+displayPageNum)){
}//end for(var p =0;p< htmlMap.length;p++){
if(thisNum>1){
if(!isLablePage){
html = '<span class="showpage"><a href="/">'+ firstPageWord +' </a></span>'+upPageHtml+' '+html +' ';
}else{
html = ''+labelHtml + firstPageWord +' </a></span>'+upPageHtml+' '+html +' ';
}
}
html = '<div class="showpageArea"><span style="padding: 2px 4px 2px 4px;margin: 2px 2px 2px 2px;border: 1px solid #333; background-" class="showpage">Page '+thisNum+' of '+(postNum-1)+': </span>'+html;
if(thisNum<(postNum-1)){
html += downPageHtml;
html += '<span class="showpage"><a href="'+htmlMap[htmlMap.length-1]+'"> '+endPageWord+'</a></span>';
}
if(postNum==1) postNum++;
html += '</div>';
if(isPage || isFirstPage || isLablePage){
var pageArea = document.getElementsByName("pageArea");
var blogPager = document.getElementById("blog-pager");
if(postNum <= 2){
html ='';
}
for(var p =0;p< pageArea.length;p++){
pageArea[p].innerHTML = html;
}
if(pageArea&&pageArea.length>0){
html ='';
}
if(blogPager){
blogPager.innerHTML = html;
}
}
}
</script>
<script src="/feeds/posts/summary?alt=json-in-script&callback=showpageCount&max-results=99999" type="text/javascript"></script>
Edite os valores em vermelho de acordo com o seu site, onde:
http://seusite.blogspot.com/ é o endereço do seu site (funciona mesmo que você tenha domínio próprio)
var pageCount=7 é o numero de Posts por página do seu site. Esse número deve ser IGUAL ao configurado no Blogger (Configurações -> Formatação)
var displayPageNum=3 é o número de páginas exibidas. Recomendo deixar esse valor em 3, já que além dessas páginas, ainda são exibidos: "Primeira, Anterior, Próxima e Última".
Os valores em Azul pode ser alterados de acordo com o gosto de cada um.
Salve, e clique em "Visualizar Blog".
Fim.
Espero que gostem e aproveitem esse hack! Ele era esperado há muito tempo!
Dúvida freqüentes:
P: Funciona 100%?
R: Não! Falando bem a verdade esse hack é uma bela gambiarra! Muito criativa, mas contém alguns erros, principalmente com os posts da primeira página (p. 1)., com o número de posts que em alguns casos não correspondem a realidade e em alguns Blogs com mais de 9999 postagens.
P: Cadê meus links de "Anterior" e "Próximo"?
R: São escondidos. Se você deletar o gadget eles retornarão automaticamente!
P: Por que não funciona no meu blog?
R: Várias pessoas tem tido problemas na implementação desse hack. A grande maioria deles é causado pelá má configuração do endereço e do PageCount! Confira esse valores!
P: Conferi, está tudo certo, me ajuda?
R: Claro, Entre em contato pelo endereço: admin@abuzzado.com.br!
P: Pedra, papel ou tesoura?
R: Papel!
=)
Marcadores:
Blogspot

