Calificación:
  • 0 voto(s) - 0 Media
  • 1
  • 2
  • 3
  • 4
  • 5
Acortar URLs con PHP y API Bit.ly
#1
Si deseas compartir tus enlaces en dispositivos móviles o en Twitter que tiene un límite de 140 caracteres es necesario acortar nuestros URLs. Para ello podemos utilizar Bit.ly, un popular servicio para acortar enlaces el cual acaba de sacar la nueva versión de su API, como lo detallan en Introducing bit.ly API Version 3. En una anterior oportunidad habíamos comentado como Acortar URLs con bit.ly y PHP pero ahora actualizaremos nuestro código utilizando el nuevo API.

Nueva API Version 3
Examinando la documentación de la nueva API en bit.ly API Documentation podemos utilizar los URLs con el siguiente formato:

Para acortar un URL.
http://api.bit.ly/v3/shorten?login=user&...format=fmt

Para expandir un URL
http://api.bit.ly/v3/expand?login=user&a...format=fmt

Donde se tiene los siguientes parámetros:

user: es tu nombre de usuario en bit.ly
key es el API Key asociado a tu cuenta de usuario.
url es el url que deseamos acortar o expandir.
fmt es el formato de la respuesta (Usaremos txt que devuelve texto).

Creando un Clase para bit.ly
Basado en estos formatos podemos crear un clase básica que permite acortar o expandir URLs utilizando el nuevo API de bit.ly

Código PHP:
class Bitly {
        var 
$path;
        var 
$user;
        var 
$key;
        function 
Bitly ($_user$_key) {
            
$this->path "http://api.bit.ly/v3/";
            
$this->user $_user;
            
$this->key $_key;
        }
        function 
shorten($url) {
            
$temp $this->path."shorten?login=".$this->user."&apiKey=".$this->key."&uri=".$url."&format=txt";
            
$data file_get_contents($temp);
            return 
$data;
        }
        function 
expand($url) {
            
$temp $this->path."expand?login=".$this->user."&apiKey=".$this->key."&shortUrl=".$url."&format=txt";
            
$data file_get_contents($temp);
            return 
$data;
        }   
    } 

Como se observa esta clase tiene dos métodos: shorten y expand.

Ejemplo de Uso
Para utilizar esta clase lo primero es incluir la clase al inicio de nuestro script PHP y luego crear una instancia de la clase Bitly que recibe dos parámetros (nombre de usuario y key de usuario).

Código PHP:
require("bitly.php");
    
$bitly = new Bitly("bitly-user""bitly-api-key"); 

Luego si deseamos acortar un URL lo haríamos de la siguiente forma:

Código PHP:
require("bitly.php");
    
$bitly = new Bitly("bitly-user""bitly-api-key");
    
$urlmin $bitly->shorten("http://blog.unijimpe.net/utilizar-recaptcha-con-php/");
    echo 
$urlmin// imprime: http://bit.ly/cMea1K 

Si tienes un URL acortada y deseas saber el URL original puedes hacerlo de la siguiente forma:

Código PHP:
require("bitly.php");
    
$bitly = new Bitly("bitly-user""bitly-api-key");
    
$urlbig $bitly->expand("http://bit.ly/cMea1K");
    echo 
$urlbig// imprime: http://blog.unijimpe.net/utilizar-recaptcha-con-php/ 

Les dejo los archivos fuente para esta clase para que hagan sus pruebas. Si tienen sugerencias y observaciones dejen sus comentarios para poder mejorar este trabajo.

Descargar
#2
Bien explicado y muy bueno el tutorial.

Yo hice algo parecido pero con el acortador de urls de google.

Saludos y gracias por compartir,
WWW
#3
Muy bueno este tutorial, me ayudará mucho en mi pagina web Sonrisa
WWW
#4
Gracias por este buen tutorial, Justo lo que estaba buscando hace algunos días, lo necesitaba
WWW
#5
Excelente, ya lo hize, ahora necesito buscar alguno que lo haga con mi misma web, nada de links externos Lengua.
#6
No había probado esta opción, ya lo estaré probando gracias por el tutorial.
saludos.


Posibles temas similares...
Tema Autor Respuestas Vistas Último mensaje
  [Tutorial] Métodos para redireccionar URLs (HTML, PHP y Javascript wiston3 1 126 01-12-2016, 11:12 PM
Último mensaje: zeuz
  (Script) Algun acortador de urls util y bueno? DannecraftWTF 1 908 12-01-2013, 05:17 PM
Último mensaje: natestale
  [Javascript] Sistema de banners aleatorios +s urls lokoyo 3 909 31-10-2011, 07:58 PM
Último mensaje: lokoyo
  Simple funcion para crear urls amigables reysoft 2 611 20-04-2011, 06:10 PM
Último mensaje: papi



Usuarios navegando en este tema: 1 invitado(s)