cURL ve goo.gl API’si ile URL Kısaltmak

Merhabalar,

Çok önceleri bir yazımda bu konu hakkında birşeyler yazacağımı belirtmiştim. Ancak fırsat bulabildim.

Bildiğiniz gibi twitter’ın kısa karakter limitleri ve sosyal paylaşımlarda, hatta bazen reklamlarda düzgün görünen linkler amacıyla bir sürü link kısaltma servisi türedi. Bunlardan bazıları: http://goo.gl, http://bit.ly, http://ow.ly vs. vs.

Bu servisleri kendi işiniz için sürekli kullanmayı düşünürseniz bazıları sizler için API sunuyor. (Goo.gl ve Bit.ly)

Öncelikle goo.gl üzerinden cURL ve API yardımı ile URL kısaltmayı yazacağım. Göreceğiniz gibi uzun bir kod değil. Ayrıca kolay kullanım için fonksiyon olarka da ayrılmış durumda.

Bu arada kullanacağınız sunucu/localhost/host üzerinde cURL eklentisinin aktive edilmiş olması gerekiyor.

Ayrıca aşağıdaki fonksiyonu kullanmak için gerekli Google API Key’ini de şu adresten alabilirsiniz: http://code.google.com/apis/console/

 

<?php
	function goo_gl_kisa_url($uzunadres) {
	//Bu değişkene Google API Anahtarınızı Giriyorsunuz
	$GoogleApiKey = 'enter-your-google-api-key-here';
	$postData = array('longUrl' => $uzunadres, 'key' => $GoogleApiKey);
    $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);
	//API https kullandığından, CURLOPT_SSL_VERIFYPEER değerini FALSE yapıyoruz.
	//Böylece cURL SSL sertifikasını doğrulamaya çalışmıyor.
    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);
	//Ayarlarını yaptığımıza göre, çalıştırıyoruz.
    $response = curl_exec($curlObj);
    $json = json_decode($response);
    curl_close($curlObj);
    return $json->id;
}
?>

Kullanımı ise şöyle:

<?php
	$uzun_adres = "http://www.mustafabugra.com/web-egitimleri/php-egitimi/curl-ve-goo-gl-apisi-ile-url-kisaltmak/";
	echo goo_gl_kisa_url($uzun_adres);
?>

Denedim çalışıyor:  http://goo.gl/fuoX3 :)

Güle güle kullanın.

 

Bu yazı bugün 0 kere olmak üzere toplam 3,089 kere okundu.

Posted in: Development

4 Comments

  1. Şener says:

    Güzel örnek, teşekkürler.

  2. azat says:

    uzun adres değişkenin de tek adres yerine tüm sayfalarda çalışması için direkt
    ör: $uzun_adres= $_SERVER[‘HTTP_HOST’].$_SERVER[‘REQUEST_URI’];
    yazarsanız ve oluşturmuş olduğunuz kodu ör: google.php sitenizde kayıt ettirerek ile sitenizde kısa linki göstermek istediğiniz yerde kullanırsınız.

  3. azad says:

    uzun adres değişkenin de tek adres yerine tüm sayfalarda çalışması için direkt
    ör: $uzun_adres= $_SERVER[‘HTTP_HOST’].$_SERVER[‘REQUEST_URI’];
    yazarsanız ve oluşturmuş olduğunuz kodu ör: google.php sitenizde kayıt ettirerek ile sitenizde kısa linki göstermek istediğiniz yerde kullanabilirsiniz

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.