Не нравятся результаты поиска? Попробуйте другой поиск!
dle-faq.ru FAQ (все вопросы) Общие вопросы Как создать подкатегорию с одинаковым названием?

Как создать подкатегорию с одинаковым названием?


     20.05.2016    Общие вопросы    373

вопрос
как создать 2 разные категории но чтоб их под категория была одинакова?
например
/фильмы/комедии
/сериал/комедии

Ответил: Gameer


Открываем /engine/modules/functions.php находим там код :
function get_ID($cat_info, $category) {
    foreach ( $cat_info as $cats ) {
        if( $cats['alt_name'] == $category ) return $cats['id'];
    }
    return false;
}
Меняем на :
function get_ID($cat_info, $category) {
    $arr_cat = array();
    foreach ( $cat_info as $cats ) {
        if( $cats['alt_name'] == $category ) $arr_cat[] = $cats['id'];
    }
  
    if(count($arr_cat) > 1)
    {
        if($_GET['category'])
        {
            $name_first_cat = explode('/', $_GET['category']); $name_first_cat = $name_first_cat[0];
            foreach($arr_cat as $first_cat)
            {
                if($cat_info[$cat_info[$first_cat]['parentid']]['alt_name'] == $name_first_cat) return $first_cat;
            }
        }
    }
    else
        return $arr_cat[0];
    return false;
}

Далее открываем /engine/inc/categories.php находим и удаляем код :
$row = $db->super_query( "SELECT alt_name FROM " . PREFIX . "_category WHERE alt_name ='{$alt_cat_name}'" );

if( $row['alt_name'] ) {
    msg( "error", $lang['cat_error'], $lang['cat_eradd'], "?mod=categories" );
}
Далее ищем и удаляем :
$row = $db->super_query( "SELECT id, alt_name FROM " . PREFIX . "_category WHERE alt_name = '$alt_cat_name'" );

if( $row['id'] and $row['id'] != $catid ) {
    msg( "error", $lang['cat_error'], $lang['cat_eradd'], "javascript:history.go(-1)" );
}

Указывать ссылки только по полным путям /film/boevik и /serial/boevik. Если же перейти просто на /boevik то выдаст первую категорию которая ближе в массиве.
Чтобы комментировать - войдите или зарегистрируйтесь на сайте

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