• 21-05-2018, 00:06:40
    #1
    Arkadaşlar sitemde etiketlerin adresi Türkçe karakterlerden oluşuyor.

    şu şekilde: https://site.com/tag/sağlam-masa

    ben şöyle olmasını istiyorum: https://site.com/tag/saglam-masa

    yani şu karakterlerin ş,ı,ö,ç,ğ gibi türkçe karakterlerin s,i,o,c,g ile değiştirilmesini istiyorum ama yapamadım. bunu nasıl yaparım?
  • 21-05-2018, 00:16:08
    #3


    Buna uyguduramadım hocam kodlarım şu şekilde:


    //TAGS ENGINE
    function tagsearch($tags_query,$limit = 100) {
        $tags_query = clean(cleanXSS($tags_query));
        if (strlen($tags_query) < 4) {
            echo '<div><p>'.l('charerror').'</p>';
        } else {
            $tags_query = trim($tags_query);
    $tags_query = str_replace("-"," ",$tags_query);
    $tagx = $tags_query;  
            $now = date("Y-m-d H:i:s",time());
            $query = 'SELECT a.id,a.title,text,a.seftitle AS asef,a.date AS date,
                       c.name AS name,c.seftitle AS csef,
                       x.name AS xname,x.seftitle AS xsef, MATCH(a.keywords_meta) AGAINST ('"+'.$tagx.'"' IN BOOLEAN MODE) AS score
                FROM '._PRE.'articles'.' AS a
                LEFT OUTER JOIN '._PRE.'categories'.' as c
                    ON category = c.id AND c.published ='YES'
                LEFT OUTER JOIN '._PRE.'categories'.' as x
                    ON c.subcat =  x.id AND x.published ='YES'
                WHERE MATCH(a.keywords_meta) AGAINST ('"+'.$tagx.'"' IN BOOLEAN MODE) AND position != 2
                    AND a.published = 1
                    AND date <= ''.$now.''';
            if(!_ADMIN){
                $query = $query.'AND a.visible = 'YES'';
            }
            $query = $query.' GROUP BY a.id HAVING score > '0' ORDER BY score DESC LIMIT '.$limit;
            $result = mysql_query($query);
            $numrows = mysql_num_rows($result);
            if (!$numrows) {
                echo '<div><p>'.l('noresults').'
                    <strong>'.stripslashes(entity($tags_query)).'</strong>.</p>';
            } else {
                echo 'Bulunan Etiket:<div id="diveti">'.
                stripslashes(entity($tags_query)).'</div></p>';
                while ($r = mysql_fetch_array($result)) {
                    $date = date(s('date_format'), strtotime($r['date']));
                    if ($r['name']) { $name = ' Kategori: '.$r['name']; } else { $name = "";}            
    $text = stripslashes($r['text']);
    $text = mb_substr($text, 0, 500, "UTF-8").'...';
                    echo '<header class=entry-header><h2 class=entry-title><a href="'._SITE.$link.$r['asef'].'">'.$r['title'].'</a>'.$r['desc'].'</h2></header><div style="font-size:15px;">'.$text.'</div><br /><div style="font-size:13px;">Tarih: '.$date.$name.'</div><hr class="style14"> ';
                }
            }
        }
    }
  • 21-05-2018, 00:16:15
    #4
    Üyeliği durduruldu
    usta wp'den kendime uyarlamıştım, işe yariyo bi deneyiver

    function get_seo_link($str, $replace=array(), $delimiter='-'){
    setlocale(LC_ALL, 'en_US.UTF8');
        if( !empty($replace) ) {
            $str = str_replace((array)$replace, ' ', $str);
        }else{
            $trArr = array('ç','Ç','ı','İ','ş','Ş','ğ','Ğ','ö','Ö','ü','Ü');
            $toArr = array('c','c','i','i','s','s','g','g','o','o','u','u');
            $str = str_replace($trArr,$toArr,$str);
            }
    
        $clean = iconv('UTF-8', 'ASCII//TRANSLIT', $str);
        $clean = preg_replace("/[^a-zA-Z0-9/_|+ -]/", '', $clean);
        $clean = trim($clean, '-');
        $clean = preg_replace("/[/_|+ -]+/", $delimiter, $clean);
    
        return $clean;
    }