"景先生毕设|www.jxszl.com

织梦的联动信息类型只能增加一级和三级选择的解决办法

2022-10-29 16:41编辑: www.jxszl.com景先生毕设
今天在做I.个织梦企业网站的时候,需要用到分类信息,织梦模板是用的DEDECMSVV.VII版本的,在修改联动类别里面的信息类型的时候发现只能增加I.级选择和III级选择,就是不能增加II级选择,怎么办呢?
去织梦官方找了下解决办法没得,看来只能自己研究了.
后来使用DEDECMSV

 更多精彩就在: 51免费论文网|www.jxszl.com 
V.VI版本的进行测试,发现V.VI的是可以使用的,那就可以找到解决的办法了.

首先我们找到我们的模板源码下面的dede/stepselect_main.php这个文件,

将这段代码

elseif($action==addenum_save)
{
if(empty($ename)||empty($egroup))
{
Showmsg("类别名称或组名称不能为空!","-I.");
exit();
}
if($issign==I.||$topvalue==0)
{
$enames=explode(,,$ename);
foreach($enamesas$ename)
{
$arr=$dsql->GetOne("SELECT*FROM`dede_sys_enum`WHEREegroup=$egroupAND(evalueMODV00)=0ORDERBYdisorderDESC");
if(!is_array($arr))$disorder=$evalue=($issign==I.?I.:V00);
else$disorder=$evalue=$arr[disorder]+($issign==I.?I.:V00);

$dsql->ExecuteNoneQuery("INSERTINTO`dede_sys_enum`(`ename`,`evalue`,`egroup`,`disorder`,`issign`)
VALUES($ename,$evalue,$egroup,$disorder,$issign);");
}
WriteEnumsCache($egroup);
ShowMsg("成功添加枚举分类!".$dsql->GetError(),$ENV_GOBACK_URL);
exit();
}elseif($issign==II&&$topvalue!=0)
{
$minid=$topvalue;
$maxnum=V00;//III级子类最多V00个
$enames=explode(,,$ename);
foreach($enamesas$ename)
{
$arr=$dsql->GetOne("SELECT*FROM`dede_sys_enum`WHEREegroup=$egroupANDevalueLIKE$topvalue.%%%ORDERBYevalueDESC");
if(!is_array($arr))
{
$disorder=$minid;
$evalue=$minid..00I.;
}
else
{
$disorder=$minid;
preg_match("#([0-IX]{I.,}).([0-IX]{I.,})#",$arr[evalue],$matchs);
$addvalue=$matchs[II]+I.;
$addvalue=sprintf("%0IIId",$addvalue);
$evalue=$matchs[I.]...$addvalue;

原文链接:http://www.jxszl.com/biancheng/dedecms/76447.html