Не нравятся результаты поиска? Попробуйте другой поиск!

Как убрать подкатегорию из url


     08.01.2013    Общие вопросы по PHP    3495

вопрос
Еще раз здравствуйте, как убрать подкатегорию из url новости?

Знаю, что в function. Написал так:

function get_url($id) {
    
     global $cat_info;
    
     if( ! $id ) return;
    
     $parent_id = $cat_info[$id]['parentid'];
    
     $url = $cat_info[$id]['alt_name'];
    
     while ( $parent_id ) {

                $pid = $parent_id;
          
          $url = $cat_info[$parent_id]['alt_name'] . "/" . $url;
          
          $parent_id = $cat_info[$parent_id]['parentid'];
          
          if( $cat_info[$parent_id]['parentid'] == $cat_info[$parent_id]['id'] ) break;
    
     }
    
        $url = $cat_info[$pid]['alt_name'];

     return $url;
}


Но так перестали работать страницы категорий, т.е. на них нельзя перейти сервер просто не отвечает, как будто бы это не ссылка. и к тому же, если новость в категории, а не подкатегории, то у нее вообще нет категории. СРОЧНО нужна помощь! Это должно работать только на урл 2 вида, очень очень нужно!

Ответа пока нет


Комментарии пользователей (7)

Ayk
1

154 | 94

Ayk - 8 января 2013 23:15 - Юзер

Сделал вод так, заработало!!!

function get_url($id) {
    
    global $cat_info;
    
    if( ! $id ) return;
    
    $parent_id = $cat_info[$id]['parentid'];
    
    $url = $cat_info[$id]['alt_name'];
    
    while ( $parent_id ) {
        
        $url = $cat_info[$parent_id]['alt_name'];
        
        $parent_id = $cat_info[$parent_id]['parentid'];
        
        if( $cat_info[$parent_id]['parentid'] == $cat_info[$parent_id]['id'] ) break;
    
    }
    
    return $url;
}

Ayk
1

154 | 94

Ayk - 8 января 2013 23:17 - Юзер

Но теперь не открывает подкатегории, а только категории, значит снова что-то неправильно

nowheremany
192

1659 | 1292

nowheremany - 9 января 2013 00:20 - Эксперт

Зачем вот стандартные функции корёжить? нельзя просто вместо
get_url($id)

вставить
$cat_info[$id]['alt_name']

Благодарность принимаю тут Связь

Ayk
1

154 | 94

Ayk - 9 января 2013 08:50 - Юзер

function $cat_info[$id]['alt_name'] {
    
    global $cat_info;
    
    if( ! $id ) return;
    
    $parent_id = $cat_info[$id]['parentid'];
    
    $url = $cat_info[$id]['alt_name'];
    
    while ( $parent_id ) {
        
        $url = $cat_info[$parent_id]['alt_name'] . "/" . $url;
        
        $parent_id = $cat_info[$parent_id]['parentid'];
        
        if( $cat_info[$parent_id]['parentid'] == $cat_info[$parent_id]['id'] ) break;
    
    }
    
    return $url;
}


сделал так, так не работает

Ayk
1

154 | 94

Ayk - 9 января 2013 00:23 - Юзер

то есть вместо первой строки?

dj-avtosh
39

1479 | 390

dj-avtosh - 9 января 2013 18:37 - шашлычник

Есть массив кэшевый $cat_info, подставляете id категории и получаете альтернативное имя, в чем проблема?

skype: elhan.isaev

Ayk
1

154 | 94

Ayk - 10 января 2013 00:35 - Юзер

не до конца понял, если честно в PHP нуб. напишите пример кодом плиз

Чтобы комментировать - войдите или зарегистрируйтесь на сайте

Похожие вопросы