Как я могу проверить, была ли нажата кнопка «Нравится» на Facebook? - PullRequest
3 голосов
/ 19 июня 2010

Я поместил кнопки, похожие на Facebook, в свой блог WordPress ... Идея состоит в том, чтобы использовать их в качестве механизма голосования для сообщений.То, что я хотел бы сделать, это автоматически добавлять комментарий к сообщению в блоге каждый раз, когда кому-то «нравится» его с помощью кнопки «Нравится» на Facebook.

Так что мой вопрос - предоставляет ли кнопка «Мне нравится» api своего рода обратный вызовмоя страница, если кто-то «успешно» что-то любит?- т.е.им это еще не понравилось, и они успешно прошли процесс отправки на Facebook.

Спасибо за любую помощь.К вашему сведению, я очень новичок в Facebook API

-Rich

Ответы [ 3 ]

5 голосов
/ 19 июня 2010

Вам необходимо подписаться на edge.create событие в соответствии с документами :

FB.Event.subscribe('edge.create', function(href, widget) {
   alert('You just liked '+href);
});

но по какой-то причине я не мог заставить его работать в прошлый раз, когда я пытался ...

1 голос
/ 12 июля 2011

Вы можете проверить это с помощью следующего вызова Facebook-API:

JavaScript (не проверено):

FB.api({ method: 'pages.isFan', page_id: 'YOUR-PAGE-ID' }, function(resp) {
    if (resp) {
      alert('You like the Application.');
    } else {
      alert('You don't like the Application.');
    }
 });

PHP (хорошо протестирован):

$facebook = new Facebook(array(
    'appId' => 'YOUR-APP-ID',
    'secret' => 'YOUR-APP-SECRET-KEY',
));
$facebook->api(array(
                'method' => 'pages.isFan',
                'page_id' => 'YOUR-PAGE-KEY'
            ))

Источник: http://forum.developers.facebook.net/viewtopic.php?id=101406

Для получения дополнительной информации см. Руководство разработчика Facebook. http://developers.facebook.com/docs/reference/rest/pages.isFan/

Пожалуйста, помните, что REST-API (используемый в этих примерах) скоро будет устаревшим.

Если вы не знаете, где взять SDK, вы можете взглянуть на эту страницу: http://developers.facebook.com/docs/sdks/

1 голос
/ 26 февраля 2011

Я использую это, чтобы отследить понравившихся пользователей. В этом случае каждый раз, когда один пользователь нажимает кнопку «Мне нравится», он создает сообщение (отправляет скрытый идентификатор) в другой файл php и сохраняет его в моей базе данных. я использую это для чего-то похожего на тебя.

ПРИМЕЧАНИЕ: я использую jquery для поста ajax.

-------------------------------------------
  window.fbAsyncInit = function() {

    FB.init({appId: 'xxxxxxxxxxxxxxxxxx', status: true, cookie: true,
             xfbml: true});

B.Event.subscribe('edge.create', function(href, widget) {

$(document).ready(function() { 

var h_fbl=href.split("/");

var fbl_id=h_fbl[4]; 


 $.post("http://mypage.com/like.php",{ idfb:fbl_id,rand:Math.random() } )

}) });
  };
...