Yeni Üretilenler
Sende Tıkla
Etiketler

Türkçe karakter sorunu ( ascii kodları , meta tagları , karakter kümeleri .. )

Pazar, Kasım 16th, 2008 | html notları, püf noktaları, wordpress | ercani

Aslında bu konuyla ilgili bir çok yazı bulabilirsiniz. Ama iletişimden bir kaç kere sorulduğu için genel olarak bir yazıda bazı türkçe karakter sorunlarını toplayım istedim. Daha önce “wordpress tema türkçeleştirmek” yazımda bundan biraz bahsetmiştim.

Öncelikle bir web sitesi hazırlanırken sitede kullanılacak dile göre karakter kümesi kodlanır. Bu kodlama web sitemizde kullanılacak karakterlerin tanınmasını sağlar. Eğer biraz  HTML bilgisine sahipseniz META taglarını duymuşsunuzdur. İşte bu karakter kümesi meta tagları içinde tanımlanır. Aşağıdaki kod satırından herhangibirisi türkçe karakterli siteler için kullanılabilir.

<META http-equiv=content-type content=text/html;charset=iso-8859-9>
<META http-equiv=content-type content=text/html;charset=windows-1254>

Bir örnek gösterelim;

<html>
<head>
<title>Karakter Kodlaması Örneği</title> Title tarayıcımızın en üstünde mavi yerde çıkacak sayfa başlığıdır

<META http-equiv=content-type content=text/html;charset=iso-8859-9>

</head>
<body>
Burası sayfamızın görüntülendiği gövde kısmıdır.
</body>
</html>
Bu şekilde sayfamızın türkçe karakterlere uygun olmasını sağlamış olduk.

Şimdi biraz UTF-8 den bahsedelim.
UTF-8 : 8 bitlik bir Unicode karakter seti formatıdır. “Unicode Transformation Format”‘ın kısaltması olarak kullanılır. UTF kullanarak 1 milyondan fazla karakter kodlanılabilinmektedir.
Yani anlıcağımız yukarıdaki META etiketleri arasına tanımladığımız türkçe karakter kümeleri ( iso-8859-9 ,windows-1254 ) yerine evrensel bir karakter kümesi tanımlayabiliriz “UTF-8 “. O zaman meta tagları içindeki kodumuz değişecektir ve şöyle olacaktır;

<meta http-equiv=”Content-Type” content=”text/html; charset=utf-8″/>

Bu şekilde sayfamızı kodladığımızda sayfamızdaki türkçe karakterler tarayıcılar tarafından düzgün yorumlanacaktır.

Bu kodlamaya karşı yinede , türkçe karakter sorunları yaşayabiliriz. Bu bazen sunucudan,  bazen kullandığımız web sisteminin kodlanmasından veya sayfayı editlerken kullandığımız editörden kaynaklı olabilir.  Böyle bir durumda türkçe karakterler,  “?” veya absürt karakterler ile değiştirilir (yani yorumlanamaz). Bunun için yapmamız gereken türkçe karakterler yerine html deki karşılıkları yada ascii kodlamadaki karşılığını yazmak.

Türkçe Karakterler İçin HTML karşılığı;

Ü <=> Ü
Ş <=> ÅŸ
Ğ <=> ÄŸ
Ç <=> Ç
ݠ <=> İ
Ö <=> Ö
ü <=> ü
ş <=> ÅŸ
ğ <=> ÄŸ
ç <=> ç
ı  <=> ı
ö <=> ö

Türkçe Karakterler İçin ASCII karşılığı;

ç      &#231;
ı      &#305;
ğ     &#287;
ö     &#246;
ş     &#351;
ü     &#252;
Ç    &#199;
İ     &#304;
Ğ    &#208;
Ö    &#214;
Ş    &#350;
Ü   &#220;

Sayfamızdaki absürt karakterlerleri  bu şekilde kodlarsak sorun ortadan kalkacaktır. Ama eğerki 10 tane sayfamız varsa ve hepsinde aynı sorunu bu şekilde halletmek istiyorsak o zaman iş baya bir zahmetli hale gelir. Sayfalardaki tüm karakterleri tek tek değiştirmek baya bir zamanımızı ve sabrımızı alacaktır. Ama bununda pratik bir yolu var.

. Bunun için notepad++ gibi bir editörde CTRL+H kısa yolunu kullanıp , üstteki resimdeki yolu takip ederek istediğimiz karakterin karşılığını tüm sayfalarda değiştirebiliriz.

Bir başka söylenecek şeyse, wordpress kullanıyorsanız ve türkçeleştirme işlemini notpad++ gibi bir editörde yapıyorsanız türkçe karakter sorunu yaşayabilirsiniz. WordPress te türkçeleştirme işlemlerinizi Tasarım–>>Tema Editörü bölümünden yaparsanız bu sorunlarla karşılaşmazsınız.
Ama türkçeleştirme yapacağınız dosya tema editöründe yoksa , o zaman bu işlemi notepad++ gibi bir editörde yapmak kaçınılmaz olur.  O zaman yapmamız gereken editörümüzdeki Düzenle–>>UTF-8 (bom olmadan) kodla seçeneğini seçmektir. Böylece editlediğimiz sayfa utf-8 kod dizisine göre kodlanacaktır.

Aynı menüde UTF-8 de kodla seçeneğide vardır. Burayı işaretlesekte aynı sonuca ulaşırız. Ama ne yazıkki bu seçenekte bazı sorunlara neden olmaktadır.
UTF-8 de kodla seçeneğini seçtiğimizde editörümüz ,bizim göremiceğimiz bir şekilde sayfanın başına   gibi bir kod ekler. Bu kod , sayfanın UTF-8 olduğunu vurgular ( Yani BOM denilen şey) ve tarayıcılarda hatalara neden olur. O yüzden bu kodu kaldırmak için BOM olmadan kodla seçeneğini seçmemiz en sağlıklı sonucu verecektir.

Umarım anlatmak istediklerimi anlatabilmişimdir. Herkese kolay gelsin…

22 KonuşmaBakalım Kim Ne Demiş?


1
ayhan
22 Aralık 2008

paylaşımın için teşekkürler..


2
OLCAY
26 Ocak 2009

çok saolun vala bende bunu arıyodum gerçekten çok yardımcı oldu emeğinize sağlık


3
aykut
03 Şubat 2009

hocam ne kadar teşekkür etsem azdır bu türkçe karakterlerle başım dertteydi gercekten teşekkürler ;)


4
bamteli
07 Şubat 2009

Bu yazıyı okumuştum aradığımı bulamadığımdan yazmaya karar verdim.


5
Türkçe Karakter Karşılıkları | Sonad net
18 Şubat 2009

[...] iki ayrı kategoride yazarak düzenledim, daha yararlı oldu diye düşünüyorum. Bu kodları buradan alıntı yaparak kullandım. Kendilerine [...]


6
deltreem
19 Şubat 2009

hocam paylaşım mukemmel ama sorum şu ki bir web sitesinde ascii kod yasaklanmış halde ise yanı ( * – _ ! ® ) gibi ifadeleri nick’inin yanına yazamıyorsan hangı sekılde yazabılırsın cunkı yasaklanmış olsa bile yapanlar var bunu ortadan kaldırmak ıstıyorum ve bende yapmak ıstıyorum yardımcı olursan sevinirim….


7
ercani
20 Şubat 2009

:) bu biraz hack işine giriyor.ascii kod yasaklanmaz sadece veritabanına müdahale olmasın diye form lara girilen karakterlerde sınırlama konulur onu aşman gerekecek. o verdiğin karakterin ascii deki kod karşılığını araştır onları kullan belki düzelir.


8
deltreem
23 Şubat 2009

yok canım estafrallah hackle falan işim yok ascii kod karsılıgı orn : ”©” nin ascii karsılıgı alt 0169
veya
”®” karsılıgı alt0174 gibi bunun karsılıgını yazdıgım sekılde olsa dahi yinede hatalı kullanıcı adı verıyor buna rağmen yapabilitemiz yokmu pekala ? cozebılıcegınızı umup sımdıden tesekkur edıyorum =))


9
NetSihirbazi
24 Mart 2009

Bende kendi wordpress blogumda bu sorunu yaşıyorum!
Ne yapsam da problemi çözemedim.
WordPress sürümü tükçe, tema tükçe ancak yazılar, etiketler, ve diğer içerikte hep Türkçe karakter hatası bulunmakta!

Anlattığınız çözüm yolu da uygulasamda düzelmedi!

Yardımınızı rica ediyorum…

Şimdiden teşekkürler…


10
harun
30 Mart 2009

notepad++ rullzzz… yazı için teşekkürler tam aradıgım bi program. yazdıgım türkçe karakterlerin html karşılıklarını yazıyo çok teşekkür ederim… dw cs3 te bile böyle bişey yok :D adobe kendinden utanmalı


11
güvercin
28 Mayıs 2009

bunların html karşılıkları varmı ?


12
MyBB’den Ka
12 Haziran 2009

[...] T


13
halı yıkama
17 Haziran 2009

Sorunu hallettim sonunda. Teşekkürler


14
Çağatay Toksözoğlu
21 Haziran 2009

Hocam merhabalar, elimdeki sitenin veri tabanım utf-8, web sitemin tamamı da utf-8…fakat web sitesine el ile yazılan karakterler haricindeki veritabanından gelen karakterler bozuk görüntülenmekte tıpkı yazınızdaki gibi… bunu nasıl önleyebiliriz?


15
gazete
14 Temmuz 2009

Sana nekadar tşk etsem azdır ercani kardeş ozellikle senin sitedeki asciler işime yarıyo senin siteyi arayp giriyorum harbiden ya saolasın.


16
Kenan
04 Ağustos 2009

Wp için yeni çıkmış olan bir eklentinin türkçeleştirilmesi gerekiyordu. Oldukça işime yaradı bu sayfa.


17
eren
20 Ağustos 2009

süpersin hocam :)


18
pckolik
09 Eylül 2009

yazını sitemde yayımladım biraz sitemli olduğunu anladım. Alıntı yapıldığını belirttim kusura bakma site oluştururken buna dikkat etmemiştim.kötü amaçlı birşey değildi tekrar özür sadece bilginin paylaşılmasından yanayım sitenden alıntı yaparsam senin siteni adres göstererek yazılarını yayınlarım müsadenle

başarıların devamını dilerim kardeş


19
ercani
10 Eylül 2009

Ya sorun değil alışkın olduğum bir durum. Keyfine göre nasıl istersen öyle yapabilirsin.


20
Oktay
13 Temmuz 2010

Çok teşekkür ederim.


21
Uğur
17 Temmuz 2010

Hocam Merhaba benim blogda karakter sorunu yok fakat kullandığım temadan kaynaklı herhangi bir konuyu facebook’da paylaştığımda zaman facebookta karakter sorunu ortaya çıkıyor temayı düzelttiğim zaman düzeliyor bu sorunu nsıl çözebilirim cevabınızı bekliyorum teşekkürler .


22
Mert
24 Temmuz 2010

Özellikle WordPress 3 yükledikten sonra bazı eklentilerimde yaşadığım türkçe karakter sorunlarından sonra tam ümidi kesmişken yazınızdakini uygulayınca çözülen problemimden sonra yüzümdeki gülümsemeyi sağladığınız için binlerce teşekkürler.

~Sadece Düşünme Sende Konuş~

Markup Controls
Emoticons Smile Grin Sad Surprised Shocked Confused Cool Mad Razz Neutral Wink Lol Red Face Cry Evil Twisted Roll Exclaim Question Idea Arrow Mr Green

NOT:Kod Eklerken, kodu yazdıktan sonra kodları işaretleyip "Kod Ekle" butonuna basalım.