|
İçerik Arama
Son üyeler
Temalar Kimler sitede
Ziyaretçi Sayısı
Alexa |
Ana sayfa / xoopshocasi.com / Web Programlama Dersleri / Modüllerin Adını Değiştirmek ve Kısaltmak
Modüllerin Adını Değiştirmek ve KısaltmakBu konu bugüne kadar en çok sorulan sorulardan birisi olmuştur. Haliyle her Türk xoops kullanıcısı sitesinde newbb yerine forum, mydownloads yerine dosyalar, mylinks yerine linkler yazmasını ister. Daha önce bu konu için hep modüllerin ismini değiştirmeyi önerdim ancak artık bu iş için daha kolay bir yol olduğunu görmüş bulunuyorum
ve bunu hemen sizinle paylaşacağım. Siz de XoopSHoCasI.CoM sitesinin
bir üyesi olmanın ayrıcalığını yaşarak yeni Türkçe modüllerinizle mutlu
mesut yaşayacaksınız. Hadi bakalım fazla uzatmadan konumuza girelim.Bir önceki makalede modules klasörünün adını bilesenler'e çevirmeyi anlatmıştım..bu seferki işlem ona göre biraz daha karmaşık görünebilir..ancak dikkatle uygulandığında pek de zor olmadığını göreceksiniz..toplamda 2 dosyada değişiklik yapacağız biri .htaccess dosyası ki burada önemli bir uyarıda bulunayım, .htaccess dosyaları Windows üzerinde çalışan serverlarda çalışmayacaktır ayrıca bu dosyaları hazırlamak da büyük bir özen ister eğer dosyada fazladan boşluk veya hatalı bir kod varsa siteniz 500 Internal Server hatası verecektir..böyle bir durumda panik olmadan .htaccess dosyasını silin ve dikkatlice yeniden oluşturun..demek ki neymiş bu işlemden önce hem mainfile.php hem de önceden varsa .htaccess dosyalarımızı yedekliyoruz ![]() Dosya: mainfile.php İşlem: aşağıdaki kodları dosyayı bir metin editöründe açarak üstlere bir yere ekleyin ////////////////////////////////////////////////////////////// // Bu kod XoopSHoCasI.CoM sitesinden indirilmiştir. // Bora Canbula - xoopshocasi@xoopshocasi.com ////////////////////////////////////////////////////////////// $GLOBALS['_rewriteRulesFrom'] = array( '/forum/', '/dosyalar/', '/linkler/', '/galeri/', ); $GLOBALS['_rewriteRulesTo'] = array( '/modules/newbbex/', '/modules/mydownloads/', '/modules/mylinks/', '/modules/myalbum/', ); $GLOBALS['_abs_offset'] = preg_replace('/https?:\/\/'.$_SERVER["HTTP_HOST"].'/','',XOOPS_URL); $GLOBALS['_rewriteRulesTo1'] = preg_replace('/^(.*)$/e','"!('.XOOPS_URL.'|\"".$GLOBALS["_abs_offset"]."|\'".$GLOBALS["_abs_offset"].")".preg_quote("\1","!")."!"', $GLOBALS['_rewriteRulesTo']); $GLOBALS['_rewriteRulesFrom1'] = preg_replace('/^(.*)$/','\\\1\1',$GLOBALS['_rewriteRulesFrom']); function modul_turkcelestirici( $s ) { $s = preg_replace($GLOBALS['_rewriteRulesTo1'],$GLOBALS['_rewriteRulesFrom1'], $s); while($i<=count($GLOBALS['_rewriteRulesFrom'])) { $s = preg_replace( '/('.preg_quote(XOOPS_URL,'/').'|"|\')'.preg_quote($GLOBALS['_rewriteRulesTo'][$i],'/').'/' ,"\\1".$GLOBALS['_rewriteRulesFrom'][$i] , $s ) ; $i++; } return $s; } if (empty($_SERVER['REDIRECT_URL']) || ($_SERVER['REDIRECT_URL'] == $_SERVER['REQUEST_URI'])) { if (empty($_SERVER['REDIRECT_REDIRECT_STATUS'])) { if (($_changer_url=modul_turkcelestirici('"'.$_SERVER['REQUEST_URI'].'"')) != '"'.$_SERVER['REQUEST_URI'].'"') { header('Location: ' . str_replace('"','',$_changer_url)); } } } $_SERVER['REQUEST_URI'] = str_replace( $GLOBALS['_rewriteRulesFrom'],$GLOBALS['_rewriteRulesTo'], @$_SERVER['REQUEST_URI'] ) ; $_SERVER['HTTP_REFERER'] = str_replace($GLOBALS['_rewriteRulesFrom'], $GLOBALS['_rewriteRulesTo'], @$_SERVER['HTTP_REFERER'] ) ; ob_start( 'modul_turkcelestirici' ) ; ////////////////////////////////////////////////////////////// // Bu kod XoopSHoCasI.CoM sitesinden indirilmiştir. // Bize güvendiğiniz için teşekkür ederiz. ;) ////////////////////////////////////////////////////////////// ben örnek olarak sadece 4 modül ekledim..benim yazdığım modülleri değiştirebilir veya ekleme/çıkarma yapabilirsiniz..sadece kodların en üst bölümünü değiştirin yeter..tabi yaptığınız değişiklikleri .htaccess dosyasına da yansıtmalısınız..yoksa bir işe yaramazlar..şimdi gelelim .htaccess dosyasına; Dosya: .htaccess İşlem: Aşağıda verdiğim kodları mevcut .htaccess dosyanıza ekleyin..eğer .htaccess dosyanız yoksa bir tane oluşturun..eğer hostunuz .htaccess dosyalarına izin vermiyorsa bu işlemi burada bırakın ve mainfile.php'de yaptığınız değişikliği de geri alın ![]() RewriteEngine on RewriteRule ^forum/(.*)$ /modules/newbbex$1 [L] RewriteRule ^dosyalar/(.*)$ /modules/mydownloads/$1 [L] RewriteRule ^linkler/(.*)$ /modules/mylinks/$1 [L] RewriteRule ^galeri/(.*)$ /modules/myalbum/$1 [L] benim hazırladığım kodlarda değişiklik yapmak isterseniz hem mainfile.php hem de .htaccess dosyasında değişiklik yapmayı unutmayın..bu işlemden önce mutlaka yedek alın..herhangi bir sorunla karşılaştığınızda her iki dosyanın da yedeğini yükleyip sitenizi eski haline döndürebilirsiniz bu arada bir çok konuda olduğu gibi bu işlemi de Türkiye'de ilk başaran XoopSHoCasI.CoM sitesi oldu..umarım kıymetimiz bilinir.. ![]() NOT: Benim örnek göstermek amaçlı kullandığım modüller sitenizde olmayabilir..linkleri değiştiriverin.. ![]() Bora Canbula ----------- xoopshocasi@xoopshocasi.com Ayrıca bakınız
Yorumlardan yazarları sorumludur.
|