2010-05-09 31 views
55

facebook "Like" butonunu uygulamakla ilgileniyorum, fakat bu butona hangi kullanıcının tıklandığını bilmek istiyorum, böylece bundan bazı yararlı bilgiler edinebilirim. Okuduklarımdan, facebook bizi neyin üzerine tıkladığı konusunda karanlıkta bırakıyor. Belirli bir ürün için hangi kullanıcının hangi düğmeyi tıkladığını nasıl izleyebileceğime dair bir fikri olan var mı?Facebook "Beğen" düğmesi geri arama

GÜNCELLEME: Benzer düğme facebook tarafından bir iFrame üzerinden veya xFBML yoluyla oluşturulur. Bu nedenle, kimlerin üzerine tıklattığını veya onclick olayını kimlerin izleyeceğini izlemek zordur.

+3

http: //developers.facebook .com/docs/reference/javascript/FB.Event.subscribe/ –

cevap

6

Tamam, nasıl uyguladığımı size bildirebilirim. Ne almak istediğim, facebook kullanıcımın UID'si, facebook connect uygulamasındaki "Beğen" düğmesine tıklayarak facebook kullanıcısıydı. Bir kullanıcı "beğen" düğmesini tıkladığında, facebook düğmeden iletilen URL'yi getirdiğini fark ettim. Bu yüzden, her giriş yapmış kullanıcı için www.somewebsite.com/thisIsThePageIlike/facebookUID URL'si ile benzersiz bir düğme oluşturdum. . Bu url ile web sunucusuna bir istek geldiğinde, bir geri arama gibi çalışır ve ben bir kullanıcı "like" ilk kez tıklattıysa UID'yi işler ve kaydeder (yani .. 'like' gibi bir kayıt mevcut değil db) 'de. benim için çalışıyor.

+0

Bu harika bir çözüm! –

+0

Akıllı çözüm! –

0

O yüzden ben sadece www.somewebsite bir URL ile giriş yapan kullanıcılar her biri için düğme gibi eşsiz bir hale müvekkilimin sitesine gibi

<iframe src="http://www.facebook.com/plugins/like.php?href=www.jesterkaraoke.com&amp;layout=standard&amp;show_faces=false&amp;width=450&amp;action=like&amp;colorscheme=light&amp;height=35" scrolling="no" frameborder="0" style="border:none; overflow:hidden; width:450px; height:35px;" allowTransparency="true"></iframe> 
9

için sahip biri gibi bir şey olurdu. com/thisIsThePageIlike/facebookUID.

Böyle bir düğmeye sahip olma ve facebook arama sıralamanızı bozma amacını ortadan kaldırmaz mı? Her kullanıcı farklı bir URL'yi beğenecek ve bu yüzden facebook, her biri tek bir sayı gibi bir tonlarca sayfanız olduğunu düşünecektir. edge.create olay

64
<script> 
    FB.Event.subscribe('edge.create', function(href, widget) { 
    alert('You just liked the page!'); 
    }); 
</script> 
+13

sadece referans vermek için: http://developers.facebook.com/docs/reference/javascript/FB.Event.subscribe/ – shem

1
window.fbAsyncInit = function() { 

    FB.Event.subscribe('edge.create', function (response) { 
     alert('Liked'); 
     }); 
    } 
    ); 
    FB.Event.subscribe('edge.remove', function (response) { 
     alert('DisLiked') 
    }); 
}; 

(function (d, s, id) { 
    var js, fjs = d.getElementsByTagName(s)[0]; 
    if (d.getElementById(id)) 
     return; 
    js = d.createElement(s); 
    js.id = id; 
    js.src = "//connect.facebook.net/en_US/sdk.js#xfbml=1&version=v2.7"; 
    fjs.parentNode.insertBefore(js, fjs); 
}(document, 'script', 'facebook-jssdk')); 

HTML ateş değil nerede

Ben de düğmeler gibi XFBML ile ilgili bir sorun yaşıyorum: -

<div id="fb-root"></div><div class="fb-like" data-href="https://www.facebook.com/testpage" data-layout="standard" data-action="like" data-size="small" data-show-faces="true"></div> 
+1

Bu işe yaramaz gibi görünüyor –

İlgili konular