YOURLS – Her Yazı İçin Otomatik Kısa Link Oluşturma

Yükleniyor

Bir önceki yazımda YOURLS nasıl kurulur, özel ayarları nasıl yapılır anlatmıştım. Henüz okumadıysanız o yazıyı yeni bir sekmede açıp önce onu okumanızı şiddetle tavsiye ediyorum.

YOURLS’u başarıyla kurup aktif hale getirdiyseniz, sitenizdeki tüm yazılar için otomatik URL oluşturmak isteyeceksinizdir. Bu yazıda bir fonksiyon yazarak bunu nasıl yapabileceğinizi anlatacağım. WordPress için anlatıyorum ama başka bir CMS ya da kendi özel sitenizde de birkaç değişiklik yaparak kullanabilirsiniz.

Gelelim fonksiyonumuza;

function ozel_kisalt($url) {
        $yourls_domain = "http://doma.in";
        $yourls_sifrem = "sifrem123456";
        $yourls_user = "kullanici_adim";
	$girdi = urlencode($url);
	$apiurl = $yourls_domain . "/yourls-api.php?action=shorturl&url=" . $girdi . "&username=" . $yourls_user . "&password=" . $yourls_sifrem . "&format=simple";
	$sonuc = @file_get_contents($apiurl);
	return $sonuc;
}

fonksiyonu functions.php’ye atmadan önce $yourls_domain, yourls_user ve $yourls_sifrem değerlerini kendinizinkine göre değiştirmeyi unutmayın.

Fonksiyon, bu haliyle her çağrıldığında parametre olarak verilen url’yi kısaltmaya, zaten daha önceden kısaltılmışsa kısa url’yi vermeye çalışır. Bu da her seferinde api sorgulaması yapması anlamına gelir ve biz bunu istemiyoruz. Bunun için WordPress’teki özel alanları kullanacağız.

WordPress kullanmıyorsanız veritabanınızda yazıların bulunduğu tabloda yeni bir sütun oluşturup bu sütunu kısa linkleriniz için kullanabilirsiniz.

Kısa linklerinizin gözükeceği php dosyasına (muhtemelen single.php) şu kodu ekleyin.

$kisa_link = wp_get_shortlink($post->ID); // WordPress'in kısa linki. Link kısaltmamız başarısız olursa bunu kullanacağız.
$pmeta = get_post_meta($post->ID, 'kisa_link', true);
if(!empty($pmeta)) {
	// kisa link zaten kaydedilmiş.
	$kisa_link = get_post_meta($post->ID, 'kisa_link', true);
} else {
	// kisa link yok, oluşturalım.
	$kisa_link = ozel_kisalt(get_permalink());
	// madem oluşturduk, veritabanımıza ekleyelim.
	add_post_meta($post->ID, 'kisa_link', $kisa_link, true);
}

Artık <?php echo $kisa_link; ?> koduyla bu sayfadanın kısa url’sini istediğiniz yere yazdırabilirsiniz. Örnek vermek gerekirse:

<input onclick="this.select();" type='text' value='<?=$kisa_link;?>' readonly />

ziyaretçilerinize oldukça kolay bir kopyala & paylaş imkanı sağlar.

Umarım işinize yarayacak bir yazı olmuştur. Anlatamadığım bir kısım varsa lütfen yorum olarak belirtmekten çekinmeyin.

YOURLS – Her Yazı İçin Otomatik Kısa Link Oluşturma” için 1 yorum

Bir Cevap Yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir