|
Kaan
678 posts |
#96 2013-04-08 22:38 GMT | |
|
Seditio Link Kısaltma
Link Kısaltma Hazırlayan: Dvdbil Hazırladığı bu fonksiyon ile uzun linkleri belirlediğiniz karakter sayılarına göre kısaltabileceksiniz. Gelişmiş özellikleri bulunan bu kodlamanın yalnızca url kısaltma değil, www. ile başlayan adresleride otomatik linklendirmekte ve yeni sayfada açmaktadır. Uygulama: System/functions.php dosyasını açın ve alttaki fonksiyon bulun: (bu fonksiyon Seditio v110 - v120 - v121 - v122be : hp]function sed_bbcode_autourls($text) $text,1));{ $text = ' '.$text; $text = preg_replace("#([\n ])([a-z0-9]+?)://([^\t \n\r]+)#i", "\\1\\2://\\3", $text); $text = preg_replace("#([\n ])([a-z0-9-_.]+?@[A-z0-9-]+\.[^,\t \n\r]+)#i", "\\1[email]\\2[/email]", $text); return(substr($text,1)); } }[/highlight] Üstteki fonksiyonu silerek alttakini ekleyin: [highlight=php]function sed_bbcode_autourls($text) {/* Function by Dvdbil */ $limit = 50; // alttaki işlevlerin uygulanabilmesi için url adresi 50 karakteri geçmeli $ilk_limit = 30; // noktalamaya kadar gösterilecek karakter sayısı $orta_limit = 6; // noktadan sonra kesilecek karakter sayısı $son_limit = $limit - $ilk_limit - $orta_limit; // noktayı takiben kesilen karakterlerden sonraki gösterilecek karakter sayısı $desen[] = "#(^|[\n ])([\w]+?://[\w\#$%&~/.\-;:=,?@\[\]+]{1,".$limit."})($|[^\w\#$%&~/.\-;:=,?@\[\]+])#is"; $degistir[] = "\\1<a href=\"\\2\" target=\"_blank\">\\2</a>\\3"; $desen[] = "#(^|[\n ])(www\.[\w\#$%&~/.\-;:=,?@\[\]+]{1,".$limit."})($|[^\w\#$%&~/.\-;:=,?@\[\]+])#is"; $degistir[] = "\\1<a href=\"http://\\2\" target=\"_blank\">\\2</a>\\3"; $desen[] = "#([\n ])([a-z0-9-_.]+?@[A-z0-9-]+\.[^,\t \n\r]+)#i"; $degistir[] = "\\1<a href=\"mailto:\\2\">\\2</a>\\3"; $desen[] = "#(^|[\n ])([\w]+?://[\w\#$%&~/.\-;:=,?@\[\]+]{".$ilk_limit."})([\w\#$%&~/.\-;:=,?@\[\]+]+)([\w\#$%&~/.\-;:=,?@\[\]+]{".$son_limit."})($|[^\w\#$%&~/.\-;:=,?@\[\]+])#is"; $degistir[] = "\\1<a href=\"\\2\\3\\4\" target=\"_blank\">\\2.....\\4</a>\\5"; $desen[] = "#(^|[\n ])(www\.[\w\#$%&~/.\-;:=,?@\[\]+]{".$ilk_limit."})([\w\#$%&~/.\-;:=,?@\[\]+]+)([\w\#$%&~/.\-;:=,?@\[\]+]{".$son_limit."})($|[^\w\#$%&~/.\-;:=,?@\[\]+])#is"; $degistir[] = "\\1<a href=\"http://\\2\\3\\4\" target=\"_blank\">\\2.....\\4</a>\\5"; $text = preg_replace($desen, $degistir, $text); return($text); }[/highlight] Karakter limitleri hakkında bilgi $limit : fonksiyonun uygulanması için tespit edilen linklerin kaç karakterde uygulanacağını belirler. $ilk_limit : noktaların koyulacağı yere kadar kaç karakterin gösterilmesini sağlayan değer. $orta_limit : noktalamadan sonraki silinecek olan karakter sayısı $son_limit : $orta_limit değerinden sonraki gösterilecek karakter sayısı ($son_limit, üstte verilen değerlerin çıkarılması sonucu elde edilen rakamdır.) Test edilmiş sürümler Seditio v110 - v120 - v121 - v122 beta Notlar - Bu fonksiyon Dvdbil tarafından Seditio için ilk defa hazırlanmıştır.
Kişiliğim, hayatım hakkında konuşabilirsiniz. Fikir yürüte bilirsiniz. Beni öyle böyle sanabilirsiniz. Ama emin olamazsınız. Sizin hakkımdaki yorumlarınız, sanmalarınız benim gerçek de ne olduğumu değiştirmez. Baktığım yeri söyleye bilirsiniz ama ne gördüğümü ASLA...
|