vBulletin 4.x türkçe karakter sorunu

'BozKurt

Yaşayan Forum Efsanesi
20 Tem 2013
11,181
6
İstanbul
Selamun aleyküm arkadaşlar. Uzun zamandır birkaç arkadaşımızın ısrarla istediği bir çözümü blogumuzda aynı sorunu yaşayan herkes için açıklayacağım. Biliyorsunuz ki vBulletin 4.x orjinal halinde Türkçe olan karakterler adres çubuğunda kötü görünüm oluşturuyor veya hiç gözükmüyor, dolayısıyla seo alanında da siteyi etkiliyor. Bu sorunun çözümü için küçük bir modifikasyon yeterli olmaktadır.

Öncelikle Admin panele girin. Daha sonra vBulletin Seçeneklerden, Friendly URL kısmına girin. Resimde daha net bir şekilde görebilirsiniz;

adim-1.png


Daha sonraki adımda ise olması gereken ayarlar;

adim-2.png


Bunları yapıp kaydettikten sonra; forumumuzun kuru olduğu dizinde “includes” adında bir klasör bulunmaktadır. Bunun içine giriyoruz ve “class_friendly_url.php” ismindeki dosyayı herhangi bir metin editörü ile açıyoruz. Yalnız dikkat etmeniz gereken husus, metin editörünüzün sayfa kodlamasını değiştirmemesi gerek. Önerim: Cpanelin kendi düzenleyicisi veya windows ile beraber gelen notepad olabilir.

Bu dosyanın içerisinde aşağıdaki kodu aratın:

Kod:
public static function clean_fragment($fragment)
    {

Yukarıdaki kodu bulamıyorsanız (bazı sürümlerde farklılık gösterebiliyor) aşağıdakini aratın

Kod:
public static function clean_fragment($fragment, $canonical = false)
    {

Aynı şekilde yukarıdaki kodu da bulamıyorsanız: o halde bu dosyanın 330-335. satırları arasında benzer kod yapısını bulun. (Kodlardan birini bulanlar için) Bu kodun hemen altına şunu ekleyin:

Kod:
 $sekar = array(
        'Ä'=>'a',
        'ä'=>'a',
        'ß'=>'ss',
        'ö'=>'o',
        'Ö'=>'o',
        'ç'=>'c',
        'Ç'=>'c',
        'ğ'=>'g',
        'Ð'=>'g',
        'ü'=>'u',
        'Ü'=>'u',
        'ş'=>'s',
        'Ş'=>'s',
        'ı'=>'i',
        'İ'=>'i'
);
   $fragment = strtr($fragment, $sekar);
   $fragment = to_ascii($fragment);

Sonuç:

adim-3.png


Ben ASCII kodları kullandım ve sorun yaşamadım. Eğer sorun yaşayan olursa konu altından yorum yaparsa kodlarda düzenlemeye gidilmesi için yardımcı olurum.

Bu şekilde dosyayı kaydediyoruz ve modifikasyonumuz tamamlanmış oluyor. Eğer eklemek istediğiniz başka karakterler de varsa kod yapısını bozmadan bir satır ekleyebilirsiniz. Örneğin siz “T” harfi büyük yazılsa bile url’de küçük çıksın istiyorsanız bir satırı kopyalayın (Örn: ‘ß’=>’ss’,) ve ‘T’=>’t', değiştirerek kaydedin.

Mesela ” işareti urlde hiç çıkmasın istiyorsanız şu şekilde bir düzenlemeye gidebilirsiniz;

Kod:
...
'ß'=>'ss',
'"'=>'', (Bu ekleme " (quot) işaretini urlden silecektir)
...

Aşağıda size birkaç ASCII kodun karşılığını veriyorum. Bu kodlara detaylıca internetten arama yaparak ulaşabilirsiniz. Bu sayede dönüştürmek istediğiniz birçok karakteri sorunsuzca dönüştürebilirsiniz.

Kod:
& = &
< = <
> = >
€ = €
˜ = ~
" = "
 
Üst

Turkhackteam.org internet sitesi 5651 sayılı kanun’un 2. maddesinin 1. fıkrasının m) bendi ile aynı kanunun 5. maddesi kapsamında "Yer Sağlayıcı" konumundadır. İçerikler ön onay olmaksızın tamamen kullanıcılar tarafından oluşturulmaktadır. Turkhackteam.org; Yer sağlayıcı olarak, kullanıcılar tarafından oluşturulan içeriği ya da hukuka aykırı paylaşımı kontrol etmekle ya da araştırmakla yükümlü değildir. Türkhackteam saldırı timleri Türk sitelerine hiçbir zararlı faaliyette bulunmaz. Türkhackteam üyelerinin yaptığı bireysel hack faaliyetlerinden Türkhackteam sorumlu değildir. Sitelerinize Türkhackteam ismi kullanılarak hack faaliyetinde bulunulursa, site-sunucu erişim loglarından bu faaliyeti gerçekleştiren ip adresini tespit edip diğer kanıtlarla birlikte savcılığa suç duyurusunda bulununuz.