dedecms, 自定, 自定义, 定义, 表单
首先,如果没有显示联动选项的话,请您先阅读《DedeCms自定义表单中联动类型不可用的解决具体的方法》,下面咱们讨论DedeCms自定义表单联动类型只显示枚举值的问题,本文的解决具体的方法适用于DedeCms5.5、5.6,其它版本没有测试。 相对于上面的具体的方法,解决以下问题:1、有多少个自定义的网站的模板,建立多少个diy_list'.$diyid.'.htm,很不灵活2、每个自定义表单只能建一个联动类型UTF-8的懒人可以名站网址导航提供:diy_list.rar,直接替换,diy_list.htm文件替换到\dede\templets下。 下面是修改具体的方法:1.在"后台目录"\templets\diy_list.htm找到(大约在41行):$fields[$field]="其它附件";}在下面加入://联动类型显示修正开始elseif($fielddata[1]=='stepselect'){$db->Execute('me',"SELECT*FROM`dede_stepselect`WHEREitemname='{$fielddata[0]}'");while($arr=$db->GetArray(me)){$egroup=$arr['egroup'];}$fields[$field]=Getenums("{$fields[$field]}",$egroup);}//联动类型显示修正结束2.找到:{/dede:datalist}在下面加入:=500){if($evalueP0==0){return(isset($GLOBALS['em_'.$egroup.'s'][$evalue])?$GLOBALS['em_'.$egroup.'s'][$evalue]:'');}elseif(preg_match("#([0-9]{1,})\.([0-9]{1,})#",$evalue,$matchs)){$esonvalue=$matchs[1];$etopvalue=$esonvalue-($esonvalueP0);$esecvalue=$evalue;$GLOBALS['em_'.$egroup.'s'][$etopvalue]=empty($GLOBALS['em_'.$egroup.'s'][$etopvalue])?''GLOBALS['em_'.$egroup.'s'][$etopvalue];$GLOBALS['em_'.$egroup.'s'][$esonvalue]=empty($GLOBALS['em_'.$egroup.'s'][$esonvalue])?'':$GLOBALS['em_'.$egroup.'s'][$esonvalue];$GLOBALS['em_'.$egroup.'s'][$esecvalue]=empty($GLOBALS['em_'.$egroup.'s'][$esecvalue])?'':$GLOBALS['em_'.$egroup.'s'][$esecvalue];return$GLOBALS['em_'.$egroup.'s'][$etopvalue].'-'.$GLOBALS['em_'.$egroup.'s'][$esonvalue].'-'.$GLOBALS['em_'.$egroup.'s'][$esecvalue];}else{$elimit=$evalueP0;$erevalue=$evalue-$elimit;$GLOBALS['em_'.$egroup.'s'][$erevalue]=empty($GLOBALS['em_'.$egroup.'s'][$erevalue])?'':$GLOBALS['em_'.$egroup.'s'][$erevalue];$GLOBALS['em_'.$egroup.'s'][$evalue]=empty($GLOBALS['em_'.$egroup.'s'][$evalue])?'':$GLOBALS['em_'.$egroup.'s'][$evalue];return$GLOBALS['em_'.$egroup.'s'][$erevalue].'-'.$GLOBALS['em_'.$egroup.'s'][$evalue];}}}?>修改完毕。 需要注意的是:添加新字段时候,表单提示文字必须和联动的组类别名一致,比如我要添加一个表单提示文字是“课程”,那么新增类别组的时候类别名也要填写“课程” 枚举 , 自定义 , 只显示 |
DedeCms 5.7 无法生成首页的解决方法