Joomla! Tek Sınır Hayal Gücünüz

Joomla! içerik yönetim sistemi esnek ve kararlı yapısıyla, web projelerinizi hayata geçirmek için sizlere her türlü alt yapıyı sunuyor. Üstelik tüm bu işlemleri hiç bir kodlama bilgisine sahip olmaksızın yapabilecek ve sınırların gerçekten de hayal gücünüzle paralel olduğunu göreceksiniz. Bu yolda sizlere eşlik edecek olan Joomla Dersleri başlangıçtan, sitenizi yayınlama aşamasına kadar her türlü destekle sizin yanınızda olacaktır.

   

PDF Yazdır e-Posta
Mehmet YAZICI tarafından yazıldı   
Pazar, 20 Temmuz 2008 14:04
Öncelikle anlatımımıza joomlayı ilk defa kuracak olan kullanıcıların, veritabanı oluştururken hangi karakter karşılaştırması baz alınarak oluşturmları gerektiği konusuna değinip en son olarak, artık joomlayı bu şekilde kurmadan farklı bir karakter yapısında kurup kullanmış olan joomlacıların ne yapması gerektiği konusuna değineceğim. 

Joomla sitenizi kurarken veritabanı karakter eşleşmesi seçeneğinden Türkçe karakter yapısı olan latin5_turkish_ci
seçeneğinin seçili olması gerekir ki bu veritabanının ileride yedeğini almamız gerektiğinde, yedeğin içindeki türkçe
karakterlerin bozuk olmamasını sağlaya bilelim. Joomlanızı bu karakter setli bir veritabanına kurduğunuzda yine
bazı türkçe karakterlerde problem olursa aşağıdaki anlatılan yolla bu sorunu giderebilirsiniz

includes/joomla.php içerisine satır 87 de şu ifade yer alıyor:

Kod:
$database->debug( $mosConfig_debug );

bu kısmı şöyle değiştirin:

$database->debug( $mosConfig_debug );
$database->setQuery("SET NAMES 'latin5'");
$database->query();
$database->setQuery("SET CHARACTER SET 'latin5'");
$database->query();
$database->setQuery("SET COLLATION_CONNECTION='latin5_turkish_ci'");
$database->query();

Ama tabii MySQL'de tabloları oluştururken latin5_turkish_ci collation ve charseti seçmeniz gerekiyor.
Ayrıca install ederken örnek veriyi yüklüyor. Onda da Türkçe karakter sorunu olmasın istiyorsanız;

installation/install2.php dosyasında satır 72 de şu kod parçası var:
$database = new database( $DBhostname, $DBuserName, $DBpassword, $DBname, $DBPrefix );

Bu kısmı şu kod parçası ile değiştirin:
$database = new database( $DBhostname, $DBuserName, $DBpassword, $DBname, $DBPrefix );
$database->setQuery("SET NAMES 'latin5'");
$database->query();
$database->setQuery("SET CHARACTER SET 'latin5'");
$database->query();
$database->setQuery("SET COLLATION_CONNECTION='latin5_turkish_ci'");
$database->query();

Peki, joomlayı kurdunuz ve söz gelimi veritabanı karakter karşılaştırması Latin1.... bunu nasıl düzelteceğiz. Bunu yapmak için gereken malzeme bir kaç sql komutu o kadar. Şöyle ki, veritabanınızdaki tüm ana tabloları altertable... komutuyla yeniden düzenlemeniz mümkün, örnek olarak bir kaç tablomuzu ele alarak bu komutun ne olduğuna ve fonksiyonuna canlı örnekle bakalım.

ALTER TABLE `jos_bannerfinish`  CONVERT TO CHARACTER SET latin5;
ALTER TABLE `jos_categories`  CONVERT TO CHARACTER SET latin5;
ALTER TABLE `jos_components`  CONVERT TO CHARACTER SET latin5;

Örneğimizde görüldüğü gibi üç tane örnek joomla tablosunu baz aldım sizler bu kodu çoğaltarak ve tablo adlarını veritabanınızdaki bulunan diğer joomla tablolarını ekleyerek hepsini birden SQL sekmesinden alttaki penceresine (komut satırı) ekleyip çalıştırdığında artık veritabanınızdaki bu tabloların değerinin Latin5'e dönüştüğünü görebilirsiniz.