URL Slug Oluşturucu
Herhangi bir başlığı temiz URL slug'ına çevirin — Türkçe karakterler dönüştürülür, noktalama temizlenir, çok satırlı toplu işlem desteklenir.
1.096 görüntülenme
Nasıl Çalışır
Bir başlığı slug'a çevirmek aslında üst üste iki problemdir: metni küçük harfe çevirip tirelemek, ve a-z dışındaki her karakteri ele almak. Aksanlı Latin karakterler için bu araç Unicode normalizasyonuna (NFD — Normalization Form Decomposition) dayanır: "é" gibi bir karakter görsel olarak tek bir glif gibi görünse de, NFD onu bir taban harf "e" artı ayrı bir birleştirici tırnak işareti (combining acute accent) olarak ayrıştırır. Ayrıştırma yapıldıktan sonra araç her birleştirici işareti kaldırır ve sade taban harfi tutar — "café" hiçbir eşleme tablosuna gerek kalmadan temiz şekilde "cafe" olur.
Ama Türkçe karakterler bu numarayı bozar. "İ/ı" ve "ğ", Unicode kurallarına göre taban harf + kaldırılabilir işaret şeklinde ayrışmaz — noktasız "ı", "i eksi nokta" değildir, kendi başına bir harftir; "ğ" (yumuşak g) ise anlamlı bir Latin ayrışımına hiç sahip değildir. Bu yüzden araç, NFD adımından önce ç→c, ğ→g, ı→i, ö→o, ş→s, ü→u için açık bir transliterasyon tablosu uygular. Somut örnek: "Öğretmenin Güncel Maaşı Ne Kadar?" ifadesi ogretmenin-guncel-maasi-ne-kadar olur — her Türkçe karakter doğru eşlenir, boşluklar ve soru işareti tirelere iner, sondaki noktalama kırpılır.
Uzunluk okunabilirliğin ötesinde de önemlidir: Google sonuçları bir URL'in yalnızca belirli bir kısmını görsel olarak kırpmadan gösterir, bu yüzden kabaca 60-70 karakteri aşan bir slug, arkasındaki tam URL doğru çalışsa bile sonuçta kırpılmaya başlar. Tutarlılık kısalık kadar önemlidir — bazı sayfalarda büyük/küçük harf karıştırmak (Bazi-Kelimeler) ya da sondaki eğik çizgiyi tutarsız bırakmak, tarayıcıya kopya URL gibi görünen şeyler yaratır ve her biri tek bir sayfaya ait olması gereken sıralama sinyalini böler. İki farklı içerik doğal olarak aynı slug'ı üretecekse (ikisi de "Başlangıç Rehberi" başlıklı iki makale), çoğu sistem ilk sayfanın URL'ini sessizce ezmek yerine sayısal bir ek ile ayırt eder (baslangic-rehberi-2) — bunu bir CMS'in varsayılanına bırakmak yerine bilinçli kararlaştırmaya değer.
Bilinmesi Gerekenler
- SEO için alt çizgiden tire daha iyidir: Google, tirenin kelimeleri ayırdığını (mavi-araba "mavi araba" okunur) alt çizginin ise yapıştırdığını (mavi_araba "maviaraba" okunur) belgelemiştir.
- Tam cümle yerine 3-6 anlamlı kelime tercih edin — slug uzadığında dolgu kelimelerini (bir, bu, için, ve) atın.
- Yayımlanmış bir slug'ı asla 301 yönlendirmesiz değiştirmeyin. Eski URL'in biriktirdiği bağlantılar ve geçmiş, biraz daha şık bir metinden daha değerlidir.
- İçerik gerçekten zamana bağlı değilse (haber gibi) slug'a tarih veya ID koymayın — URL'ine yıl gömülü kalıcı bir rehber (/rehber-2023/), içeriğin kendisinden çok önce bayat görünmeye başlar.
- Slug'ı, sayfanın başlığı zamanla değiştiğinde de tutarlı tutun — bir başlık ciddi şekilde yeniden yazıldığında, slug'ın onu takip edip etmeyeceğine (yönlendirmeyle) yoksa biriktirdiği bağlantı değeri için sabit mi kalacağına bilinçli karar verin.
- Toplu dönüşümlerde tutarlılık önemlidir: bütün bir içerik arşivini aynı kural setiyle tek seferde dönüştürmek, slug'ların yıllar içinde elle oluşturulduğunda sızan uyumsuz büyük/küçük harf ve başıboş karakterleri önler.
Sıkça Sorulan Sorular
Tire mi alt çizgi mi?
Tire. Google yıllar önce belgeledi: tire kelimeleri ayırır, alt çizgi yapıştırır — mavi-araba "mavi araba" okunur, mavi_araba "maviaraba".
Slug'a tarih veya ID koymalı mıyım?
Yalnız içerik gerçekten zamana bağlıysa (haber). Kalıcı sayfalar URL'de yıl olmadan daha uzun yaşar — /rehber-2023/ içerik güncellense bile 2026'da bayat görünür.
Unicode normalizasyonu tek başına neden Türkçe karakterleri çözemiyor?
NFD ayrıştırması yalnızca é veya ü gibi, iç yapısı gerçekten "taban harf + aksan" olan karakterlerde işe yarar. Türkçe ı (noktasız) ve ğ, Unicode'da bu şekilde kurulmamıştır — kaldırılacak bir birleştirici işaret formu olmayan, kendi başına ayrı harflerdir; bu yüzden onlar için açık bir ç/ğ/ı/ö/ş/ü transliterasyon tablosu gerekir.
% veya & gibi sayı ve semboller ne oluyor?
Sayılar değişmeden geçer; semboller ya anlamlıysa dönüştürülür (& → ve) ya da atılıp boşluk gibi bir kelime sınırı olarak ele alınır — böylece "%20 İndirim" URL'de başıboş noktalama bırakmadan 20-indirim olur.
Birçok başlığı tek seferde toplu dönüştürebilir miyim?
Evet — her satıra bir başlık yapıştırın, araç aynı sırayla her satır için bir slug döndürür; bu, bir taşıma veya toplu içe aktarma öncesi makale başlıklarından oluşan bir tabloyu tek tek çevirmekten çok daha hızlıdır.
Benzer Araçlar
Sorun Bildir
URL Slug Oluşturucu
Yorumlar
Henüz yorum yok — ilk yorumu siz yazın!