Hace ya un tiempo que facebook nos ofrece una gran herramienta como es permitir a los usuarios comentar en nuestra página web mediante nuestra cuenta.

En esta entrada vamos a implementar de forma básica este sistema sin necesidad de plugins externos.

Las ventajas que nos ofrece Facebook respecto a los comentarios por defecto de WordPress:

  • Comentar sin tener que loguearse
  • Al comentar una persona en facebook permite que todas sus amistades vean el comentario y por lo tanto generamos tráfico indirecto a nuestra página

Creando la aplicación

El primer paso es crear una aplicación en facebook para gestionar nuestros comentarios (Este paso es opcional pero es muy recomendable de cara a poder moderar nuestros comentarios después)

Entramos en el siguiente enlace y creamos una app nueva añadiendo la url de nuestra página.

https://developers.facebook.com/apps

Una vez creada lo que nos interesa es la id de nuestra aplicación

Añadiendo la SDK de Facebook

El siguiente paso es añadir la SDK de Facebook en nuestra página, para eso buscamos el archivo header.php de nuestra theme, y justo después de el tag de abertura de <body> pegamos el siguiente código:

<div id="fb-root"></div>
<script>(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_ES/all.js#xfbml=1&appId=nuestraAppID";
 fjs.parentNode.insertBefore(js, fjs);
}(document, 'script', 'facebook-jssdk'));</script>

Hay que tener en cuenta que donde pone nuestraAppID hay que modificarlo por el número que hemos obtenido al crear la aplicación de facebook.

Ya que tenemos el header abierto, dentro del head añadimos el siguiente meta:

<meta property="fb:app_id" content="{nuestraAppID}"/>

De este modo definimos nuestra aplicación de Facebook como administrador de la página y todos los usuarios definidos como administradores de la aplicación podrán moderar comentarios.

Añadiendo los comentarios

Llegados a este punto ya estamos listos para ñadir los comentarios. Buscamos el archivo single.php de nuestra theme (El encargado de mostrar nuestras entradas). Allí donde queramos mostrar los comentarios añadimos el siguiente código (antes de finalizar el bucle):

<div data-href="<?php the_permalink(); ?>" data-num-posts="2" data-width="470"></div>

Si queremos desactivar los comentarios por defecto de WordPress, buscamos la función comments_template(); y la substituimos por el código anterior.

Contando los comentarios

Facebook también ofrece la opción de mostar el número de comentarios de nuestra entrada, donde queramos que se vean añadimos el siguiente código.

<fb:comments-count href=<?php the_permalink(); ?> /></fb:comments-count> comentarios

El problema de este método es que nos devuelve el número de comentarios dentro de un tag span, esto es un problema por si queremos manejar el número con php para por ejemplo no encontrarnos con el típico «1 comentarios». Para solucionarlo podemos usar un método un poco más complicado.

function fb_comment_count($id) {
$json = wp_remote_get("https://graph.facebook.com/".get_permalink($id));
if(is_wp_error($json))
return false;
$fbData = json_decode($json['body'], true);
return intval($fbData['comments']);
}

Copiando esta función en nuestro functions.php, podemos llamarla con un simple fb_comment_count($post->ID);

Y esto es todo por el momento, espero que os sea de ayuda

Deja una respuesta

3 × 2 =