Quinta-feira, 8 de Maio de 2008

Experimentando o sistema de créditos do Infoblogs

Como vocês podem ver pela imagem ao lado, estou começando a adicionar aos posts o link para crédito do infoblogs (funciona de forma semelhante ao digg). Não sei se vou realmente usá-lo porque é um saco. Para que o script funcione é preciso configurá-lo para o permalink do post, mas eu só sei o permalink depois de publicar o post e visualizar o blog. Assim para que funcione vai ser sempre preciso:

  1. salvar;
  2. visualizar o blog para obter o permalink do último post;
  3. editar o post para gravar o permalink nele;
  4. Salvar de novo.
Se for muito trabalho para pouco retorno (se os usuários não clicarem) eu vou deixar de usar isso rapidinho.

17 comentários:

dcampos disse...

Caramba! Não sei exatamente o que isso faz, mas demorou uns 45 segundos a mais para carregar essa figura de créditos na página do teu blog...Achei até que meu browser havia travado, é isso mesmo?

[]'s
Daniel

Jefferson disse...

Foi só a figura que demorou a aparecer? O texto do post apareceu normalmente?

Somente hoje eu devo ter acrescentado a imagem a cerca de 30 posts (todos de Abril para cá). Cada um deles vai buscar o script no infoblogs e executá-lo e isso pode realmente demorar um pouco se você estiver abrindo meu blog pela página inicial.

Jefferson disse...

OBS:

Não é exatamente uma imagem. Parece uma, mas eu creio que é tudo criado com recursos de CSS. O problema é a execução do script.

dcampos disse...

Sim, o texto apareceu logo. O problema foi só no carregamento da figura (ou script) de créditos.

[]'s
Daniel

dcampos disse...

Caramba, fiz um teste agora e dei refresh no browser e o bicho ficou 1 minuto praticamente "recarregando" esses scripts e só no fim apareceu a informação do seu perfil a direita na página do blog. Será que é só comigo? Fiz o refresh duas vezes para ter certeza.

[]'s
Daniel

Marcio Neves disse...

Porque você não coloca direto no template? Por exemplo (se o seu template ainda é o do "modo clássico", procure por <$BlogItemBody$>):
<div id="infoblogs"><span style="float: left; margin-right: 10px; margin-top: 7px;"> <script> var infoblogs_url = '<$BlogItemPermalinkURL$>'; </script> <script src="http://www.infoblogs.com.br/api/infoblogscredit.js"></script> </span><$BlogItemBody$>

Exemplo se usa o modo Layout (vá em Layout -> Editar HTML, clique em Expandir modelos de widgets e procure por data:post.body)
<div id="infoblogs"><span style="float: left; margin-right: 10px; margin-top: 7px;"> <script> var infoblogs_url = '<$BlogItemPermalink$>'; </script> <script src="http://www.infoblogs.com.br/api/infoblogscredit.js"></script> </span><$data:post.body$>

Jefferson disse...

Marcio,

Eu não sabia que dava para fazer isso. De qualquer forma eu experimentei o segundo método e deu a seguinte mensagem de erro no Preview:

Your template could not be parsed as it is not well-formed. Please make sure all XML elements are closed properly.
XML error message: The content of elements must consist of well-formed character data or markup.


O erro acontece apenas na presença da linha <script> var infoblogs_url = '<$BlogItemPermalink$>'; </script> e eu não consegui entender o que há de errado nela :(

Marcio Neves disse...

É porque o <$BlogItemPermalink$> está errado :D Esqueci de corrigir quando copiei de um para o outro. Na verdade, assim como <$BlogItemBody$> vira <data:post.body/>, o <$BlogItemPermalink$> tinha que ser trocada para <data:post.url/> :)
Assim:
<div id="infoblogs"><span style="float: left; margin-right: 10px; margin-top: 7px;"> <script> var infoblogs_url = '<data:post.url/>'; </script> <script src="http://www.infoblogs.com.br/api/infoblogscredit.js"> </script> </span><data:post.body/>

Marcio Neves disse...

Só um comentário: Agora que notei que as tags estão desbalanceadas. Tem um <div id="infoblogs"> sem o respectivo </div> depois do <data:post.body/>

Só por curiosidade: você guardou o template original, né, antes de fazer essa alteração que sugeri, né? :D

Jefferson disse...

Marcio,

Está resolvido agora. Obrigado pelas dicas!

Marcio Neves disse...

Aí, viu, ficou legal, uniforme, mantém um padrão para todos os posts, passados e futuros, e te poupa todo aquele trabalhão para poder postar o script por post. Bem mais prático, não?

Jefferson disse...

Marcio,

Eu notei a falta da tag desde o seu primeiro post.

Eu não guardei o template original porque esta é a primeira modificação que faço e é simples de reverter até mesmo para mim que não tenho experiência nenhuma nisso. Na pior das hipóteses, basta reverter para o default do template.

O modo automático é inegávelmente mais conveniente mas eu vou precisar fazer ajustes em algumas postagens porque ficaram bagunçadas. Principalmente quando começam com imagens ou listas.

E talvez eu tenha que reduzir o número de posts por página, que hoje está em 99. Eu gosto de ter muita informação por página porque facilita a busca, salvamento e impressão, mas cada vez que alguém entra pela página inicial do blog 99 requeisições de script estão sendo feitas ao infoblogs, sem contar com a necessidade de rodar o script 99 vezes. No meu sistema isso está relativamente demorado, no de Daniel está muito demorado e em outros pode ficar intolerável. Vou checar isso em outros PCs e outros tipos de acesso.

Marcio Neves disse...

Realmente, aqui, e lá em casa, a página aparece de cara, mas a informação de créditos demora um bocado até aparecer. E não aparece em todos, talvez por conta do acesso de scripts a serem rodados: os posts lá do fundão por exemplo aparecem sem os créditos, ficando só o retângulo vazio, em branco.
E quanto ao lance do template, o bom mesmo seria se fosse possível colar esse código direto no post, com tags de template: assim, você coloca só naqueles que acha que merece e sem se preocupar com "permalinks". Mas, por enquanto, não tem como. Pelo menos, não que eu saiba: se você colocar um <data:post.url/> direto no post, ele deve sair ipsis literis na publicação do mesmo - na verdade, nunca testei :D
De qualquer forma, ficou bem legal :)

Anônimo disse...

Para que servem estes tais créditos?

Jefferson disse...

Para dizer: "gostei do que você escreveu. continue!" Ou "Gente, vale a pena ler isto aqui!".

O mesmo objetivo do Digg, com outro nome.

dcampos disse...

Testei agora aqui no trabalho e a demora foi ainda pior..
Tive que esperar quase uns dois minutos antes de poder realizar um scroll na tela, pois antes disso fica tudo embaralhado por causa do carregamento dos scripts...

[]'s
Daniel

Jefferson disse...

Daniel,

Eu reduzi o número de posts por página de 99 para 20. A demora agora está mais tolerável.

Não gosto de ter que fazer isso, mas se até eu que estou em banda larga estou achando a demora incômoda, apenas leitores antigos iam ter a paciência para esperar a carga da página, por acreditarem que o conteúdo vale a pena.

E mesmo assim, paciência tem limites ;)