Exibindo a quantidade de comentários do Facebook em seu post

ATENÇÃO: A API do Facebook foi alterada em Agosto de 2016, por isso a quantidade não é mais exibida e assim este código não funciona mais. Como não ficou claro se essa mudança é em definitivo ou não, mantivemos a postagem aqui mas provavelmente ela não funcionará mais.

Em um dos projetos que trabalhei recentemente, utilizamos os comentários do Facebook na página de cada post e vimos a necessidade de exibir em outras páginas, como na listagem de todos os posts, de posts de uma categoria, e alguns outros locais, a quantidade de comentários que esta página teve.

Utilizando os comentários do WordPress isto é uma tarefa simples, mas como pegar esta quantidade total de comentários em uma página diretamente pela API do Facebook? Descobri como, e segue neste post a solução.

Adicione o trecho abaixo no arquivo functions.php de seu tema (e caso ele não exista, crie-o):

function fb_comments($url){
$json = json_decode(file_get_contents('https://graph.facebook.com/?ids=' . $url));
return ($json->$url->comments) ? $json->$url->comments : 0;
}

O código acima passa a url da página para a função e a utiliza para pegar todos os dados do facebook por sua API, decodificar o JSON retornado e pegar o campo que contém a quantidade total de comentários na página.

Para exibir tal quantidade no seu front-end, basta utilizar a seguinte função onde desejar, dentro do loop dos posts:

<?php echo fb_comment(get_permalink()); ?>

E pronto! Em 5 linhas de código seus problemas estão resolvidos 😀

Posts Similares

  • Customizando a página de login de seu WordPress

    Customizando a página de login de seu WordPress

    Muitos procuram como personalizar as páginas de login do WordPress, e isso é possível com um pouco de CSS e uma função para adicionar tal CSS nas páginas corretas. São apenas alguns passos, vamos a eles!

  • Como acelerar seu blog WordPress usando menos plugins?

    Como acelerar seu blog WordPress usando menos plugins?

    Muitos artigos e blogueiros apresentam matérias mostrando métodos atuais para fazer seu WordPress mais rápido, recomendar soluções eficientes como ter arquivos CSS e JavaScript otimizados e concatenados, como usar CSS sprites e cache. Seguindo essa dica, na verdade este conceito, você pode fazer o seu blog carregar até duas vezes mais rápido (ou mais), e…

  • Como remover o Editor do menu ‘Aparência’

    O painel do WordPress contém um item no menu que permite que você edite qualquer tema WordPress instalado em Aparência > Editor. No entanto, há momentos em que você não pode querer alguém bisbilhotando e alterando as coisa por lá e limitar tal poder de edição apenas a quem tenha a senha de FTP, já…

  • Como ativar a aba Links no WordPress 3.5

    Por padrão, a seção de Links foi desativada em novas instalações que utilizem o WordPress 3.5 pois grande parte da comunidade já havia deixado de utilizar lista de links por seus sites. Entretanto, muitos usuários que ainda gostariam de utilizar tal funcionalidade podem ter se sentido prejudicados com tal remoção e estão sem saber como…

  • Mais cores para a seção administrativa do WordPress 3.8

    Uma das coisas que mais gostei no WordPress 3.8 foi o novo esquema de cores para a parte administrativa do WordPress. Não só das que vem como padrão, mas já vislumbrando a possibilidade de criar mais esquemas e dar uma cara diferente para cada projeto, os personalizando ainda mais. Se você não encontrar um esquema…

  • 3 ferramentas eficientes para migração de banco de dados no WordPress

    Um dos desafios da migração de um site WordPress é localizar e substituir uma URL no banco de dados e as atualizar para o novo endereço do site. São ainda mais links para atualizar em uma instalação multisite, e você pode estar trabalhando com um banco de dados maior do que um blog convencional. Hoje…

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *

9 Comentários

  1. Show de bola, o melhor formulário que existe para blogs é o nativo do facebook. Ele gera fluxo e comentário de pessoas reais. Muito difícil ver fakes postarem pelo facebook.

  2. Realmente não funciona, o problema disso seria a quantidade de requisições extras para carregar a API do Facebook.

    É melhor não exibir a quantidade de comentários e se der inserir um lazy load no facebook comments, inclusive, existe um plugin para isso.