国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > CMS > 織夢DEDE > 正文

織夢5.7bug修復:后臺聯動無法添加二級欄目的辦法

2024-07-12 09:11:28
字體:
來源:轉載
供稿:網友

我在使用織夢dedecms的分類信息的時候需要添加聯動屬性,結果去添加聯動屬性的時候,發現只可以添加一級聯動和三級聯動。

二級聯動無法添加了。

在自己的5.6的后臺添加的時候,發現是可以的。估計又是5.7版本的bug了。

    于是分析了代碼,和大家分享下解決的辦法:
首先我們找到我們的模板源碼下面的 dede/stepselect_main.php  這個文件,

將這段代碼
 

else if($action=='addenum_save'){    if(empty($ename) || empty($egroup))    {         Showmsg("類別名稱或組名稱不能為空!","-1");         exit();    }    if($issign == 1 || $topvalue == 0)    {        $enames = explode(',', $ename);        foreach($enames as $ename)        {            $arr = $dsql->GetOne("SELECT * FROM `dede_sys_enum` WHERE egroup='$egroup' AND (evalue MOD 500)=0 ORDER BY disorder DESC ");            if(!is_array($arr)) $disorder = $evalue = ($issign==1 ? 1 : 500);            else $disorder = $evalue = $arr['disorder'] + ($issign==1 ? 1 : 500);                           $dsql->ExecuteNoneQuery("INSERT INTO `dede_sys_enum`(`ename`,`evalue`,`egroup`,`disorder`,`issign`)                                    VALUES('$ename','$evalue','$egroup','$disorder','$issign'); ");        }        WriteEnumsCache($egroup);                                                                 ShowMsg("成功添加枚舉分類!".$dsql->GetError(), $ENV_GOBACK_URL);        exit();    } else if ($issign == 2 && $topvalue != 0)    {        $minid = $topvalue;        $maxnum = 500; // 三級子類最多500個        $enames = explode(',', $ename);        foreach ($enames as $ename)        {            $arr = $dsql->GetOne("SELECT * FROM `dede_sys_enum` WHERE egroup='$egroup' AND evalue LIKE '$topvalue.%%%' ORDER BY evalue DESC ");            if(!is_array($arr))            {                $disorder = $minid;                $evalue = $minid.'.001';            }            else            {                $disorder = $minid;                preg_match("#([0-9]{1,})/.([0-9]{1,})#", $arr['evalue'], $matchs);                $addvalue = $matchs[2] + 1;                $addvalue = sprintf("d", $addvalue);                $evalue = $matchs[1].'.'.$addvalue;}            $sql = "INSERT INTO `dede_sys_enum`(`ename`,`evalue`,`egroup`,`disorder`,`issign`)                                    VALUES('$ename','$evalue','$egroup','$disorder','$issign'); ";            // echo $sql;exit;            $dsql->ExecuteNoneQuery($sql);        }        // echo $minid;        WriteEnumsCache($egroup);        ShowMsg("成功添加枚舉分類!", $ENV_GOBACK_URL);        exit();    } else {        $minid = $topvalue;        $maxid = $topvalue + 500;        $enames = explode(',', $ename);        foreach($enames as $ename)        {            $arr = $dsql->GetOne("SELECT * FROM `dede_sys_enum` WHERE egroup='$egroup' AND evalue>$minid AND evalue<$maxid ORDER BY evalue DESC ");            if(!is_array($arr))            {                $disorder = $evalue = $minid+1;            }            else            {                $disorder = $arr['disorder']+1;                $evalue = $arr['evalue']+1;            }            $dsql->ExecuteNoneQuery("INSERT INTO `dede_sys_enum`(`ename`,`evalue`,`egroup`,`disorder`,`issign`)                          VALUES('$ename','$evalue','$egroup','$disorder','$issign'); ");        }        WriteEnumsCache($egroup);        ShowMsg("成功添加枚舉分類!", $ENV_GOBACK_URL);        exit();    }}


 

替換為:
 

else if($action=='addenum_save'){   if(empty($ename) || empty($egroup)) {      Showmsg("類別名稱或組名稱不能為空!","-1");      exit();   }   if($issign==1 || $topvalue==0)   {       $enames = explode(',', $ename);       foreach($enames as $ename)       {        $arr = $dsql->GetOne("Select * From `dede_sys_enum` where egroup='$egroup' And (evalue mod 500)=0 order by evalue desc ");         if(!is_array($arr)) $disorder = $evalue = ($issign==1 ? 1 : 500);     else $disorder = $evalue = $arr['disorder'] + ($issign==1 ? 1 : 500);         $dsql->ExecuteNoneQuery("Insert into `dede_sys_enum`(`ename`,`evalue`,`egroup`,`disorder`,`issign`)                                    values('$ename','$evalue','$egroup','$disorder','$issign'); ");        }        WriteEnumsCache($egroup);      ShowMsg("成功添加枚舉分類!".$dsql->GetError(), $ENV_GOBACK_URL);    exit();  }  else  {    $minid = $topvalue;    $maxid = $topvalue + 500;    $enames = explode(',', $ename);       foreach($enames as $ename)       {     $arr = $dsql->GetOne("Select * From `dede_sys_enum` where egroup='$egroup' And evalue>$minid And evalue<$maxid order by evalue desc ");     if(!is_array($arr))     {      $disorder = $evalue = $minid+1;     }     else     {      $disorder = $arr['disorder']+1;      $evalue = $arr['evalue']+1;     }     $dsql->ExecuteNoneQuery("Insert into `dede_sys_enum`(`ename`,`evalue`,`egroup`,`disorder`,`issign`)                                  values('$ename','$evalue','$egroup','$disorder','$issign'); ");        }        WriteEnumsCache($egroup);    ShowMsg("成功添加枚舉分類!", $ENV_GOBACK_URL);    exit();  }}



然后保存,在系統后臺更新系統緩存就可以了的。現在在后臺的聯動類別管理里面就可以增加二級選擇了。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 梅州市| 红桥区| 瑞昌市| 阿克陶县| 万全县| 南江县| 晋江市| 遵义县| 海晏县| 东辽县| 若羌县| 马山县| 淳化县| 弥渡县| 额济纳旗| 大港区| 岚皋县| 东安县| 郑州市| 芒康县| 上饶县| 西盟| 厦门市| 霍邱县| 苗栗市| 永安市| 宁化县| 五莲县| 西城区| 云和县| 宁南县| 安新县| 长子县| 德州市| 政和县| 辽宁省| 信阳市| 呼玛县| 浦县| 洛南县| 广宗县|