在不改动织梦dedecms程序的情况下,首页调用联动类型出来的是枚举值,也就是一堆垃圾数字。需要改动include/channelunit.func.php这个文件,把枚举值变成枚举名。
在上述文件中加入以下代码:
//联动类型function GetInfoType($联动类别组名){global $dsql;$typename=”;$query = " Select ename From `dede_sys_enum` where egroup = ‘联动类别组名’ And evalue = ‘$联动类别组名";$dsql->Execute(‘ename’,$query);while($row=$dsql->GetArray(‘ename’)){$typename .=($typename==” ? $row['ename'] : ‘,’.$row['ename']);}return $typename;}?>
在首页用以下代码调用:
{dede:arclistsg addfields=’联动类别组名’ row=’8′ channelid=’模型ID’ typeid=’栏目ID’ titlelen=’24′ }[field:联动类别组名 function=GetInfoType(@me)/]{/dede:arclistsg}
如果想做成链接的形式,可以用下面的代码:
//联动类型function GetInfoType($联动类别组名){global $dsql;$typename=”;$query = " Select ename From `dede_sys_enum` where egroup = ‘联动类别组名’ And evalue = ‘$联动类别组名";$dsql->Execute(‘ename’,$query);while($row=$dsql->GetArray(‘ename’)){$typename .=($typename==” ? $row['ename'] : ‘,’.$row['ename']);$typelink = "<a href=’$cfg_phpurl/plus/list.php?channelid=模型ID&联动类别组名=$联动类别组名’>$typename</a>";}return $typelink;}?>
这样点击链接就可以直接查询该模型下所有同枚举值的列表了。
链接的路径并不一定适用,要根据自己的网站目录路径修改。
还有很重要的一点,该联动类别必须要有至少一个二级分类,也就是子分类下的子分类才能调用成功.
以上就是dedecms中使用arclistsg标签在首页调用联动类型字段的方法的全部内容,希望对大家的学习和解决疑问有所帮助,也希望大家多多支持武林网。新闻热点
疑难解答