Giriş:
Cotonti ile birlikte artık yepyeni bir özellik mevcut. Bağlantılarınızı extra zahmete girmeden artık yönetim panelinden şekillendirebiliyorsunuz.
Şimdi bunun nasıl yapılacağını hep birlikte öğrenelim.
Öncelikler:
Öncelikle kök dizinimize bir adet 
.htaccess dosyası oluşturuyoruz ve bu dosyaya 
CHMOD 777 uygulayarak yazma iznimizi veriyoruz.
Daha sonra 
datas/urltrans.dat dosyasına 
CHMOD 777 uygulayarak yazma iznimizi veriyoruz.
Bu izinleri vermemizdeki amaç yönetim panelinden yapacağımız işlemleri bu dosyalara otomatik olarak yazdırmaktır.Tüm işlemleri yaptıktan sonra yazma izinlerini geri alabilirsiniz.
Detaylar:
Bu bölümde url modifikasyon sayfamızda hangi bölümün ne işe yaradığını öğreneceğiz.
Öncelikle 
 Yönetim Paneli > Diğer > URL ya da 
admin.php?m=urls bağlantısı ile url modifikasyon sayfamıza giriyoruz.
    
* Yeni Kural -Bu bölüme yeni bir kural eklemenizi sağlar
    
* Alan - Bu bölümde her bir kurala 
"*".php atanmıştır. Bunları url modifikasyonlarına göre değiştirebilirsiniz.
    
* Parametreler - Bu alana url'niz için hangi parametreyi kullanmanız gerekiyorsa onu yazmalısınız
    
* Biçim - Bu alana url biçimini girebilirsiniz
    
* Sil - Bu buton ile url kurallarını silebilirsiniz.
    
* .htaccess yazılsın mı? - Bu alanda 
.htaccess dosyasının otomatik mi yoksa manuel mi yazılacağını seçebilirsiniz.
    
* Sırlama değiştir(Gizli) - Url modifikasyonu için oluşturmuş olduğunuz kuralların sırasını sürükle - bırak yöntemi ile değiştirebilirsiniz.
    
* Kaydet - Genel kayıt ve güncelleme kaydını bu buton ile yapabilirsiniz.
Genel url modifikasyon özelliklerini yapacağımız örneklerin içinde göreceğimiz için detaylı olarak anlatmıyorum.
Basit url modifikasyon örnekleri:
Sayfalar:
- Sayfa nosuna göre url modifikasyonu:
    *  Alan: - page
    
*  Parametreler: - id=*
    
*  Biçim: - {$_area}/{$id}
    
*  Çıkış örneği: - sayfa/1
    
*  .htaccess Örneği: - 
RewriteRule ^sayfa/([0-9]+)$ page.php?id=$1 [QSA,NC,NE,L]
- Sayfa alyansına göre url modifikasyonu:
    *  Alan: - page
    
*  Parametreler: - al=*
    
*  Biçim: - {$_area}/{$al}
    
*  Çıkış Örneği: - sayfa/benimekledigimsayfa veya sayfa/benim-ekledigim-sayfam veya sayfa/benim_ekledigim_sayfam
    
*  .htaccess Örneği: -
      
RewriteRule ^sayfa/([a-zA-Z0-9_]+)$ page.php?al=$1 [QSA,NC,NE,L]
Üyeler:
- Üyeler için genel url modifiasyonu:
    *  Alan: - users
    
*  Parametreler: - *
    
*  Biçim: - {$_area}/
    
*  Çıkış Örneği: - uyeler/
    
*  .htaccess Örneği: -
  
    RewriteRule ^uyeler/$ users.php [QSA,NC,NE,L]
- Üyeler için kullanıcı nosuna göre url modifikasyonu:
    *  Alan: - users
   
 *  Parametreler: - m=*
   
 *  Biçim: - {$_area}/{$m}/{$id}{!$u}
    
*  Çıkış Örneği: - uyeler/detay/1
    
*  .htaccess Örneği: -
      RewriteRule ^uyeler/([a-z]+)/$ users.php?m=$1 [QSA,NC,NE,L]
      RewriteRule ^uyeler/([a-z]+)/([0-9]+)$ users.php?m=$1&id=$2 [QSA,NC,NE,L]
- Üyeler için kullanıcı adına göre url modifikasyonu:
    *  Alan: - users
    
*  Parametreler: - m=*
   
 *  Biçim: - {$_area}/{$m}/{$u}{!$id}
   
 *  Çıkış Örneği: - uyeler/detay/Gökhan YILDIZ
   
 *  .htaccess Örneği: -
      RewriteRule ^uyeler/([a-z]+)/$ users.php?m=$1 [QSA,NC,NE,L]
      RewriteRule ^uyeler/([a-z]+)/([^?]+)$ users.php?m=$1&u=$2 [QSA,NC,NE,L]
Gelişmiş URL Modifikasyon Örnekleri:
Öncelikle 
system/ dizinine 
functions.custom.php isimli bir dosya oluşturuyoruz ve açıp bu kodu içine ekliyoruz.
<?php
/**
 * Main function custom library.
 *
 * @package Cotonti
 * @version 0.6.6
 * @author Neocrome, Cotonti Team
 * @copyright Copyright (c) 2008-2009 Cotonti Team
 * @license BSD License
 */
defined('SED_CODE') or die('Wrong URL');
?> 
Daha sonra 
datas/config.php dosyamızı açıp bulun:
$cfg['customfuncs'] = FALSE;
değiştirin:
$cfg['customfuncs'] = TRUE;
Kaydedin ve kapatın.
Tekrar 
Yönetim Paneli > Diğer > URL sayfasına girin.
Kategori URL Modifikasyonu (list)
    *  Alan: - list
    
*  Parametreler: - c=*
    
*  Biçim: - {list_url_structure()}
    
*  Çıkış Örneği: - makaleler/ ya da haberler/guncel/
    
* .htaccess Örneği: -
      RewriteRule ^(makaleler|haberler)/$ list.php?c=$1 [QSA,NC,NE,L]
      RewriteRule ^(makaleler|haberler)/([a-z-]+)/$ list.php?c=$2 [QSA,NC,NE,L]
      RewriteRule ^(makaleler|haberler)/([a-z-]+)/([a-z-]+)/$ list.php?c=$3 [QSA,NC,NE,L]
functions.custom.php dosyasını açın ve bulun:
defined('SED_CODE') or die('Wrong URL');
altına ekleyin:
/**
 * Changes  to / for List URLS
 *
 * @param array $args Args passed over from sed_url
 * @param array $spec Special info passed over from sed_url
 * @return string
 */
function list_url_structure(&$args, &$spec)
{
	global $sed_cat;
	
	$url = str_replace('.', '/', $sed_cat[$args['c']]['path']).'/';
	unset($args['c']);
	
	return $url;
} 
Sayfa URL Modifikasyonu (pages)
Sayfa nosuna göre ya da sayfa alyansına göre url modifikasyonu:
    
* Alan: - page
    
* Parametreler: - *
    
* Biçim: - {page_url_structure()}
    
* Çıkış örneği: - kategori/no ya da kategori/altkategori/alyans
    
* .htaccess Örneği: -
#sayfa nosu icin
RewriteRule ^(makaleler|haberler)/([0-9]+)$ page.php?id=$2 [QSA,NC,NE,L]
RewriteRule ^(makaleler|haberler)/([a-z-]+)/([0-9]+)$ page.php?id=$3 [QSA,NC,NE,L]
RewriteRule ^(makaleler|haberler)/([a-z-]+)/([a-z-]+)/([a0-9]+)$ page.php?id=$4 [QSA,NC,NE,L]
#sayfa alyansi icin
RewriteRule ^(makaleler|haberler)/([a-zA-Z0-9-_]+)$ page.php?al=$2 [QSA,NC,NE,L]
RewriteRule ^(makaleler|haberler)/([a-z-]+)/([a-zA-Z0-9-_]+)$ page.php?al=$3 [QSA,NC,NE,L]
RewriteRule ^(makaleler|haberler)/([a-z-]+)/([a-z-]+)/([a-zA-Z0-9-_]+)$ page.php?al=$4 [QSA,NC,NE,L]
functions.custom.php dosyasını açın ve bulun:
defined('SED_CODE') or die('Wrong URL');
altına ekleyin:
/**
 * Changes  to / for Page URLS
 *
 * @param array $args Args passed over from sed_url
 * @param array $spec Special info passed over from sed_url
 * @return string
 */
function page_url_structure(&$args, &$spec)
{
	global $sed_cat, $pag, $row, $rpagecat;
	$page_cat = (!empty($sed_cat[$rpagecat]['path']) && empty($page_cat)) ? $sed_cat[$rpagecat]['path'] : $page_cat;
	$page_cat = (!empty($sed_cat[$pag['page_cat']]['path']) && empty($page_cat)) ? $sed_cat[$pag['page_cat']]['path'] : $page_cat;
	$page_cat = (!empty($sed_cat[$row['page_cat']]['path']) && empty($page_cat)) ? $sed_cat[$row['page_cat']]['path'] : $page_cat;
	$url =  str_replace('.', '/', $page_cat).'/';	
	if($args['id'])
	{
		$url .= $args['id'];
		unset($args['id']);
	}
	else
	{
		$url .= urlencode($args['al']);
		unset($args['al']);
	}
	return $url;
}
Kaydedin ve kapatın.
URL modifikasyonunun nasıl yapıldığını bu örnekler ile birlikte iyice anlamış olduk.Aynı tekniklerden yararlanarak kendiniz için yeni kurallar tanıyabilir ve kendi url modifikasyonunuzu hazırlayabilirsiniz.
			
 
		
1 раз