2013-09-25 11 views
12

Qual è il modo migliore per sincronizzare i commenti di Facebook tra gli articoli del sito web e la pagina dei fan. Quello che vorrei realizzare è:Commenti Facebook - Sincronizzazione tra sito web e fan page

  • pubblicare articoli sul sito web con commenti fb come sistema di commenti
  • utenti possono commentare questo articolo attraverso il sito web
  • utenti possono commentare questo articolo tramite fan page di facebook (ad esempio dopo la condivisione di link a questo articolo)
  • commenti tra il sito web e fb sono sincronizzati

Attualmente ho fatto tutto ciò che è scritto nei documenti e tutto quello che posso fare è commentare articolo attraverso sito web, ma non riesco a trovare il modo di mostrare/accedere a questa discussione da Facebook. Anche dopo aver aggiunto un commento non viene mostrata alcuna attività sul mio account. Tutto viene visualizzato solo sul sito web.

+0

Hai provato a usare il [Facebook casella di commento dei plugin] (https://developers.facebook.com/docs/plugins/comments) – sraje

risposta

-1

Recentemente l'ho fatto sul mio sito Web, anche se i commenti pubblicati sulla pagina di Facebook passano attraverso il sito web, il link per commentare post, reindirizza al post di Facebook, dove può essere commentato

Sotto il codice che ho usato:

<script> 
    function get_facebook_posts() { 
     console.log('Loading facebook posts'); 
     FB.api('/|REPLACE WITH PAGE ID/feed?limit=10&access_token=|REPLACE WITH FB ACCESS TOKEN|', function(response) 
     { 
      $.each(response.data, function(key, val){ 
      message = val['message']; 
      if(message != 'undefined' && message != '' && message != null && typeof(message) != 'undefined'){ 
       identifier = val['id']; 
       identifier_parts = identifier.split('_'); 
       spec_identifier = identifier_parts[1]; 

       var creator; 
       if(typeof(val['admin_creator']) != 'undefined'){ 
        creator = val['admin_creator']['name']; 
       } 
       else{ 
        creator = '|REPLACE WITH YOUR DESIRED PAGE NAME|'; 
       } 

       var post_html = '<div class="col-sm-4">'+ 
            '<div class="single-blog">'+ 
             '<img class="fbpostimage" id="post_image_'+ spec_identifier +'" src="images/logo.png" alt="" />'+ 
             '<h2>'+ creator +'</h2>'+ 
             '<ul class="post-meta">'+ 
              '<li><i class="fa fa-clock-o"></i><strong>Published on:</strong> '+ getDateString(val['created_time']) +'</li>'+ 
             '</ul>'+ 
             '<div class="blog-content">'+ 
              '<p>'+ val['message'] +'</p>'+ 
             '</div>'+ 
             '<a href="" class="btn btn-primary" data-toggle="modal" data-target="#blog-detail_'+ spec_identifier +'">Comments</a>'+ 
            '</div>'+ 
            '<div class="modal fade" id="blog-detail_'+ spec_identifier +'" tabindex="-1" role="dialog" aria-hidden="true">'+ 
             '<div class="modal-dialog">'+ 
              '<div class="modal-content">'+ 
               '<div class="modal-body">'+ 
                '<button type="button" class="close" data-dismiss="modal" aria-hidden="true">&times;</button>'+ 
                '<iframe src="https://www.facebook.com/plugins/post.php?href=https%3A%2F%2Fwww.facebook.com%2F|REPLACE WITH PAGE ID|%2Fposts%2F'+ spec_identifier + 
                '&width=500" width="500" height="498" style="border:none;overflow:hidden" scrolling="no" frameborder="0" allowTransparency="true"></iframe>'+ 
               '</div> '+ 
              '</div>'+ 
             '</div>'+ 
            '</div>'+ 
           '</div>'; 

       $('#|REPLACE WITH THE ID OF THE DIV WHERE POSTS MUST APPEAR|').append(post_html); 

       console.log(identifier); 


       FB.api('/' + identifier + '/attachments?access_token=|REPLACE WITH FACEBOOK ACCESS TOKEN|', function(subresponse){ 
         if(subresponse.data.length > 0){ 
          if(typeof(subresponse.data[0]['media']) != 'undefined'){ 
           if(typeof(subresponse.data[0]['media']['image']) != 'undefined'){ 
            $('#post_image_' + spec_identifier).attr('src', subresponse.data[0]['media']['image']['src']); 
           } 
          } 
         } 
       }); 
      } 
      }); 
     }); 

     function getDateString(date){ 
     var monthNames = ["Jan", "Feb", "Mar", "Apr", "May", "Jun", 
      "Jul", "Aug", "Sept", "Oct", "Nov", "Dec" 
     ]; 
     var date = new Date(date); 
     var hours = date.getHours(); 
     var minutes = date.getMinutes(); 
     var ampm = date.getHours() >= 12 ? 'PM' : 'AM'; 
     hours = hours % 12; 
     hours = hours ? hours : 12; // the hour '0' should be '12' 
     minutes = minutes < 10 ? '0' + minutes : minutes; 
     var strTime = hours + ':' + minutes + ' ' + ampm; 

     return monthNames[date.getMonth()] + " " + date.getDate() + " " + date.getFullYear() + " " + strTime; 
     } 
    } 
    window.fbAsyncInit = function() { 
    FB.init({ 
     appId   : '|REPLACE WITH FACEBOOK APP ID|', 
     autoLogAppEvents : true, 
     xfbml   : true, 
     version   : 'v2.10' 
    }); 
    FB.AppEvents.logPageView(); 
    FB.Event.subscribe('xfbml.render', get_facebook_posts); 
    }; 

    (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/es_LA/sdk.js"; 
    fjs.parentNode.insertBefore(js, fjs); 
    }(document, 'script', 'facebook-jssdk')); 
</script> 

È necessario sostituire ogni testo tra || con l'effettiva APP e i dati della pagina.

Speranza che aiuta