¿Cómo mostrar el número de veces que se ha compartido una URL sin usar el botón de Facebook?

  • Autor Autor arturouw
  • Fecha de inicio Fecha de inicio
arturouw

arturouw

Delta
Social Media
¡Usuario con pocos negocios! ¡Utiliza siempre saldo de Forobeta!
Hola amigos,

Estoy intentando mostrar el número de veces que ha sido compartido un enlace de mi página usando el siguiente código:

HTML:
<!-- count facebook -->
    <script>
        var permalink = '<?php the_permalink() ?>';

        $(document).ready(function() {

            var getFacebookCount = function () {
                $.getJSON('https://graph.facebook.com/'+permalink, function(data){
                    var facebookShares = parseInt(data.share.share_count);
                    if (facebookShares) {
                        $('.facebook').append(kFormatter(facebookShares));
                    }else{
                        $('.facebook').append(kFormatter(0));
                    }
                });
            };

            getFacebookCount();

        });

        function kFormatter(num) {
            return num > 999 ? (num/1000).toFixed(1) + 'k' : num;
        }

    </script>

HTML:
<span class="facebook"></span>

Pero al recargar varias veces la página el getJSON() no responde nada, al parecer facebook bloquea esto cuando se hacen varias consultas. Alguien tiene un método más efectivo sin que ocurra esto?
 
arturouw

Hola, recien lo hice y me quedo.

PHP:
<?php$api = "https://graph.facebook.com/https://www.facebook.com";$curl = curl_init($api);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, 0);curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, 0);//execute the session$curl_response = curl_exec($curl);//finish off the sessioncurl_close($curl);
$api_json = json_decode($curl_response, true);//print_r($curl_jason);
echo $api_json['share']['share_count'];?>

Usa Ese Ya con echo $api_json['share']['share_count']; Podras mostrar la cantidad de Share o cualquier dato que deses.
 
Última edición:
Atrás
Arriba