Como mostrar a quantidade de assinantes de um feed no seu blog

Há diversas maneiras de convencer uma pessoa a assinar o feed do seu blog. Escrever conteúdo de qualidade e com freqüencia é a mais efetiva. Tornar o processo de assinatura o mais simples possível também é extremamente importante. Mas, um artifício que tem sido muito usado — principalmente depois do lançamento do FeedBurner — e que eu tenho achado bastante eficiente, é exibir a quantidade de assinantes do seu feed em algum lugar de destaque no seu blog.

Alguns questionam se isso é realmente interessante, comparando esse “contador de assinantes” com os antigos contadores de visitas que foram extremamente populares no século passado. Eu acho que é legal. Gosto de ver o número de assinantes crescendo. É bom pro ego.

Porém, descobrir quantas pessoas efetivamente assinam o seu feed não é uma tarefa trivial. Se você fosse tentar fazer isso sozinho, teria que mapear todos os agregadores existentes, dissecar suas user-agent strings (pois alguns, como o Bloglines, enviam nessa string o número de pessoas que assinam o feed), verificar o IP de cada acesso, processar isso tudo, etc.

Por isso, hoje, se você tem a necessidade (ou curiosidade) de saber quantas pessoas assinam seu feed, a melhor opção é usar o FeedBurner.

Se você já usa o FeedBurner, há duas maneiras de saber o número de assinantes do seu feed:

  1. Usar uma imagenzinha padrão provida pelo FeedBurner, que pode ser ativada pela aba Publicize, item FeedCount, no painel de administração do seu feed
  2. Ou pegar esse dado pela API do FeedBurner, chamada Awareness API — que também pode ser ativada na aba Publicize –, que te dá acesso a diversas informações sobre o seu feed, entre elas o que eles chamam de “Circulation“, que nada mais é que a quantidade de pessoas que acessaram o seu feed nas últimas 24 horas.

A primeira opção é simplíssima e até interessante, porém a imagem, pelo menos por enquanto, está disponível apenas em um formato, e o texto nela contido é em inglês, o que pode não agradar aos seus leitores brasileiros que não falam essa língua.

A segunda — a API — já não é tão simples assim, mas não chega a ser complicada. É ela que eu uso para exibir aqui no blog a quantidade de assinantes do meu feed e é sobre ela que eu realmente quero falar.

Usando a API

A API — para fins de consulta da quantidade de assinantes — consiste simplesmente de uma chamada a uma URL, que retorna um XML com dados sobre o seu feed.

A URL é http://api.feedburner.com/awareness/1.0/GetFeedData e recebe dois parâmetros:

  • uri, que é a URL do seu feed, por exemplo http://feeds.feedburner.com/meufeed
  • e dates, que pode ser uma data apenas (no formato yyyy-mm-dd) ou um intervalo de datas, separadas por vírgula. Este parâmetro, quando usado na primeira forma (uma data simples) não pode conter a data de hoje, pois os valores são atualizados uma vez por dia (por volta das 5 horas de Brasília, acho), e dados referentes a um dia ainda incompleto não são retornados.

Um exemplo de URL para chamada da API: http://api.feedburner.com/awareness/1.0/GetFeedData?url= »
http://feeds.feedburner.com/meufeed&dates= »
2006-07-24

(Notem que » denota uma quebra de linha usada para poder acomodar a URL aqui no post sem estourar a largura disponível. Obviamente a URL não pode conter quebra de linhas, nem o caractere »).

Ao chamar essa URL, um XML será retornado, contendo o ID do seu feed no FeedBurner, o valor de “circulation” e a quantidade de hits.

Extrair o valor de “circulation” para usar onde você quiser é bem simples. Tudo que você precisa é de um parser XML ou até mesmo uma expressão regular.

Plugins para o wordpress

Mas, será que não tem algo pronto pra facilitar a minha vida? Claro que tem. Se você usa o wordpress, há um plugin que te dá acesso a todas as informações que podem ser acessadas via Awareness API. O plugin se chama FeedBurner Awareness plugin, é bem simples de usar e funciona a contento.

Porém, no período em que testei esse plugin, ele apresentava, aleatoriamente, 0 assinantes, o que não é nada bom. Principalmente quando o objetivo de mostrar a quantidade de assinantes é o de convencer o usuário a assinar também o feed. Então resolvi dar o meu próprio jeito nesse problema criando um plugin muito mais simples que o citado acima, mas que, pelo menos até agora, não apresentou nenhum problema.

Minha solução - BT FeedBurner Subscribers

[update] O mal do Murphy é que ele estava certo. Eu estava usando esse plugin há semanas e tudo estava funcionando normalmente. Agora, só porque resolvi postar aqui, parece que ele resolveu parar de funcionar.

Fiz um update nele, usando as dicas do Bruno e usando métodos alternativos ao Snoopy para pegar o conteúdo do XML, já que este parecia ser o problema da primeira versão. Desculpem o transtorno.

Parece que na versão 0.3, tudo está funcionando normalmente. Se não estiver, me avisem.[/update]

Na verdade, fiz esse plugin há muito pouco tempo. Antes, a danada da preguiça fez com que eu usasse um código dentro do próprio template do blog, que chamava a API a cada visita, o que tornava o blog um pouco mais lento e o deixava exposto a problemas caso o FeedBurner ficasse indisponível.

O plugin, que chamei de BT FeedBurner Subscribers, checa a quantidade de assinantes em um intervalo de tempo definido pelo usuário e guarda esse valor na tabela de opções do wordpress. Simples assim. Ele não faz nada além disso. Não te dá acesso a nenhuma outra informação além da quantidade de assinantes, como faz o FeedBurner Awareness plugin.

Usar o plugin também é bem simples. Baixe o arquivo (zip, 3KB), descompacte-o na pasta de plugins do wordpress (wp-content/plugins), vá até a página de gerenciamento de plugins e ative-o.

Feito isso, vá na página de opções, no item “Assinantes via FeedBurner“, preencha os dados e clique em “Atualizar”.

Depois disso, edite o seu template e coloque <?php btfb_the_subs() ?> onde você quiser que apareça a quantidade de assinantes, e pronto.

Será exibida sempre a quantidade de assinantes do dia anterior, excluindo os fins-de-semana (ou seja, mostrando os dados referentes a sexta-feira), caso o checkbox “Pular fins de semana” esteja marcado.

Se houver interesse, e se eu tiver tempo e saco, vou tentar melhorar aos poucos o plugin. Comentários são bem-vindos.

Leia também:

25 Comentários sobre “Como mostrar a quantidade de assinantes de um feed no seu blog”

Faça um comentário

Ficou muito interessante o plugin, vou arrumar um tempinho para implementar.

Olhando o código, gostaria de dar algumas sugestões:

Colocar todas as variáveis em um array, assim só seria necessário escrever uma linha na tabela de opções (o próprio WP faz o serialize e unserialize do array).

Não carregar o load_plugin_textdomain(), é esnecessário, a não ser que você forneça as strings de localização e o arquivo PO para isto.

A url do plugin base mudou para http://www.insanum.com/software.

Abraço


#2 | Fernando Bittencourt

Bacana o texto, Bruno, mas é estranho observar que, logo abaixo do post, teu “contador de assinantes” não está mostrando nenhum número… É normal?

Abraço.


Pois é, instalei em um dos meus sites, e não apareceu nada… Ativei o plugin, configurei-o, mas não apareceu.

Teremos uma versão 1.1 para corrigir isso?

[]’s!


Muito boa a dica. O uso de API’s é cada vez mais interessante na Web. Uma observação: no exemplo da sua URL, o parâmetro correto é “uri” e não “url”.


#5 | Sandro Ricardo Silva Meira

Olá, caro Bruno Torres! Sou assinante de seu Blog e aprendo muito. Li seu texto sobre como contar os assinantes de Feeds de Blogs, mas, não sou assinante do Feedburner. Gostaria de saber se há a possibilidade para adotar esta ferramenta em meu Blog. Sou assinante do Blogger.
Um abraço!!!


Ghedin, dei uma arrumada no código e coloquei na página do plugin uma versão 0.2.

Acho que agora está funcionando. Valeu pelo feedback.


Então, entrei no site hoje, e não é que agora começou a aparecer!? Não sei se é isso, mas acredito que aquele intervalo de checagem, que por padrão é de duas horas, faz com que o valor só apareça depois que o plugin estiver ativo por duas horas.

Faz sentido?

[]’s


Que legal! Não sou especialista em desenvolver nada para a Internet, mas vou tentar colocar no meu blog. Tô bem no início da jornada do aprendizado sobre o assunto. Se eu conseguir, qualquer um consegue. Valeu pela força Bruno! Abraço do Beto.


Não concordo que usar esse API, para exibição de assinantes seja uma ótima idéia. Você disse que é bom pro Ego, claro, você tem muitos assinantes. São casos específicos.

Uma imagem que exibe o número de visitantes não faz alguém assinar um Feed. O que faz alguém assinar um Feed é o desejo de ele querer sempre estar “por dentro” do que rola no site do cara. Resume-se: conteúdo.

Ao meu ver, isso não é de importância, pelo menos pro meu caso.


#10 | Lorn

Muito legal o plugin, não o conhecia.
Parabéns, já coloquei no meu site :D


Fiz o passo-a-passo mais ainda não aparece o número de assinantes… Geralmente demora mesmo?
Vou aguardar..

Abraço!


Opa Bruno,
Seguinte, eu estava usando a imagem do feedburner até hoje, quando resolvi utilizar o seu plugin.

Mas…deu muita diferença entre o que o FeedBurner diz ser a quantidade de assinantes com a que o seu plugin informa!

No Feedburner aparece: 36 assinantes, no seu plugin aparecem 390!!!!

Tem algum errado? Uma multiplicação por 10 talvez e no caso seria 39?

Alguém já te reclamou disso?

Abraços


Agora que notei que no btfb_options está o valor de nSubs está aparecendo como “39″, mas não estou entendendo pq no blog aparece 390?


Ops…eu devia estar pisando na bola em algum lugar…
Agora está tudo certo!

Valeu Bruno!


Voltei com mais problemas…
Seguinte…de vez em quando o plugin simplesmente para de funcionar. Desde ontem, quando instalei o plugin, já aconteceu isso 4 vezes…todas as vezes eu tiver que ir em opções e voltar para 0.002 salvar, e depois voltar para o valor padrão.

A minha pergunta é: você também utiliza este plugin, ou faz diretamente usando a api do feedburner? Pois nunca vi o seu blog sem o contador de assinantes ali…

Só peço essa dica, pois estou pensando em fazer uma contingência para seu plugin…

Falow…abraços


#16 | Cab

Droga, as vezes as pessoas esquecem que só não existe wordpress por aí. =|

Vou ver se aprendo a fazer uma parser xml agora. =|


Cool…


Nice…


#19 | Ivan

Cool…


Cool…


Muito obrigado pelas dicas. Muito bom o seu blog!
=D


#22 | Juli

Bruno, o exemplo de endereço que chamada a API está errado, note que em no meio da URL está

“{…} awareness/1.0/GetFeedData?url=http://feeds {…}”

repare que está escrito url inves de uri.


Favor editar o comentário anterior, favor excluir o “em” que escapuliu na primeira linha, e colocar o x no meu nick.

{ pode deletar este comentário depois disso }

Valeu!


Caros Amigos

Estou com um problema, no blog do PlanetaCelular as imagens postadas não aparecem, alguém sabe aonde está errado.

vejam aqui não aparece a imagem
http://feeds.feedburner.com/PLANETACELULAR

aqui está OK
http://feeds.feedburner.com/klikdigital
http://feeds.feedburner.com/cineplaneta

GRATO
PAULO


Muito bom o plugin! Eu tava atrás de um jeito de fazer isso pois quero disponibilizar o número de assinates em forma textual no tema que estou trabalhando! :D

Abraço!


« Evitando caching quando (e só quando) o arquivo CSS for atualizado

O que é delicioso pra você, pode ser pra mim também »

Deixe seu comentário

Buscas populares: Ganhar dinheiro, AdSense, Velox, Acessibilidade, IE7, CSS Position, Quero ganhar dinheiro