Thumbnails de YouTube en Facebook

La situaci贸n es la siguiente: tienes un blog en WordPress donde publicas posts que incluyen videos de YouTube. Al pegar un permalink de este blog en el muro de Facebook, se esperar铆a obtener los thumbnails correspondientes al video YouTube.

Con un blog que administro (enlacenacional.com) esto no suced铆a. Facebook solo mostraba el logo de la web como thumbnail. Siempre. Era muy aburrido.

He le铆do que mucha gente tiene este problema, la mayor铆a le echa la culpa a un error de Facebook. Buscando una soluci贸n d铆 con una pista: la soluci贸n pasa por insertar en la cabecera de cada p谩gina el meta tag siguiente, que indica qu茅 imagen debe usarse como preview (en este caso deben ser los thumbnails del video YouTube):

< link rel="image_src" >

Para hacer esto autom谩ticamente, encontr茅 el plugin Facebook and Digg Thumbnail generator. Sin embargo, not茅 que este plugin falla con los c贸digos embeded m谩s recientes de YouTube.

For the record, anteriormente, el c贸digo embeded era de este tipo:

value="http://www.youtube.com/v/AhMfIL5MF2A&hl=es&fs=1

Ahora es as铆:

value="http://www.youtube.com/v/Os28AxvgYSw?fs=1&hl=es_ES

Como resultado de esta variaci贸n, el plugin Facebook and Digg Thumbnail generator no funciona correctamente. Hab铆a que mejorar, actualizar, su c贸digo, en particular la l铆nea correspondiente a la expresi贸n regular que obtiene el identificador del video, una serie de 11 caracteres.

Para eso, reemplazo esta l铆nea:

preg_match('@www.youtube.com/v/([^&"\' ]*)&@i', $post->post_content, $m);

por esta otra:

preg_match('/www.youtube.com\/v\/([A-Za-z0-9._%-]*)[&\w;=\+_\-]*/', $post->post_content, $m);

Y ya que estoy en eso, agrego dos variables extras, para generar dos thumbnails m谩s que Facebook pueda mostrar:

$image = "http://i4.ytimg.com/vi/$yt_id/default.jpg";
$image1 = "http://i4.ytimg.com/vi/$yt_id/1.jpg";
$image3 = "http://i4.ytimg.com/vi/$yt_id/3.jpg";
...
echo "\t".'< link rel="image_src" href="'.$image."\" />
echo "\t".'< link rel="image_src" href="'.$image1."\" />
echo "\t".'< link rel="image_src" href="'.$image3."\" />

Hechos estos cambios, el plugin funciona correctamente, y ahora Facebook ya tiene 4 opciones de thumbnails para los links de Enlace Nacional: el logo, y los 3 thumbnails del video YouTube.

Deja una respuesta

Tu direcci贸n de correo electr贸nico no ser谩 publicada.

Este sitio usa Akismet para reducir el spam. Aprende c贸mo se procesan los datos de tus comentarios.