InterAmplitude Agência Digital

Blog

Como verificar se o usuário é fã de uma página do facebook

14 de março de 2012  |  Programação

Quando se trata de apps para Facebook, pode-se dizer que é bem difícil encontrar informações concretas, sobre sua API, e que realmente funcionaram.

Estava desenvolvendo o app do Big Brother Brasil na fan page do Roberto Shinyashiki e em um dado momento, eu precisava verificar se o usuário atual já era fã. Pesquisei em diversos artigos na internet, na documentação oficial, no fórum de discussão oficial, e nada que me ajudasse, pois tinha um grave problema: com alguns usuários ele conseguia identificar e com outros não.

Até que descobri que no Facebook, existe uma configuração de privacidade que não deixa outros usuários, ou apps, identificarem se você já é ou não fã de determinada fan-page.

Para corrigir este problema utilizei uma ‘extended permission’ que faz com que quando o usuário permita o acesso do aplicativo às suas informações, ele também permita ver seus ‘likes’.

Ok, mas e como eu faço para obter essa permissão do facebook?

Muito simples, utilizando o PHP, quando você vai desenvolver um app, você deve criar o objeto “facebook” e obter a url de login, que é a url que você vai utilizar para fazer o usuário permita o app. Neste momento você deve definir alguns parâmetros de escopo, e é aí que você coloca o ‘user_likes’.

Veja um exemplo:

$args = array(
   scope => "publish_stream,photo_upload,user_likes",
   redirect_uri 	=> APP_URL
);
$loginUrl = $facebook->getLoginUrl($args);

Essa simples palavra definida no “SCOPE” permite que você tenha acesso às páginas que o usuário curtiu, consequentemente, conseguir saber se ele já é ou não fã de determinada fan-page.

Compartilhe:


Compartilhar no Facebook

Sobre o autor

Bruno Braga

Bruno Braga

Programador pleno, analista de SEO e Coordenador de desenvolvimento na InterAmplitude

    Recentes deste autor

    Postar um novo comentário

    *
    *

    Seu e-mail nunca será publicado Campos marcados com * são obrigatórios

    (Spamcheck Enabled)

    Confirme o código * Time limit is exhausted. Please reload the CAPTCHA.