Seleccionar página

S

i estamos interesados en utilizar en nuestras páginas un acortador de URLs, recomiendo utilizar el que nos proporciona google porque, además de ser corto (6 caracetres), nos proporciona estadísticas detalladas del uso de cada enlace generado.

Para utilizar su API existe un proyecto llamado googl-php que incluye una clase muy fácil de usar con la que podremos tanto acortar como expandir URLs con el acortador Goo.gl de Google.

El proyecto se puede ver en su página de Google code y también os dejo un enlace a la clase googl.class

Para utilizar esta clase debemos obtener nuestra clave de API de Google. Para conseguirla debemos acudir al siguiente enlace.

Si, como a mí, la función shorten os da error, podeís modificarla por la siguiente:

//This is the URL you want to shorten
$longUrl = 'http://www.example.com';
$apiKey = 'your_api_key_here';
//Get API key from : http://code.google.com/apis/console/

$postData = array('longUrl' => $longUrl, 'key' => $apiKey);
$jsonData = json_encode($postData);

$curlObj = curl_init();

curl_setopt($curlObj, CURLOPT_URL, 'https://www.googleapis.com/urlshortener/v1/url');
curl_setopt($curlObj, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($curlObj, CURLOPT_SSL_VERIFYPEER, 0);
curl_setopt($curlObj, CURLOPT_HEADER, 0);
curl_setopt($curlObj, CURLOPT_HTTPHEADER, array('Content-type:application/json'));
curl_setopt($curlObj, CURLOPT_POST, 1);
curl_setopt($curlObj, CURLOPT_POSTFIELDS, $jsonData);

$response = curl_exec($curlObj);

//change the response json string to object
$json = json_decode($response);

curl_close($curlObj);

return $json->id;

Os recuerdo que la respuesta JSON que devuelve la API es:

{
"kind": "urlshortener#url",
"id": "http://goo.gl/lBfOH",
"longUrl": "https://www.packtpub.com/php-jquery-cookbook-to-create-interactive-web-applications/book"
}