Dedecms首页模板中调用联动类别的方法,织梦文章
导读:织梦文章织梦文章第一步:channelunit.func.php中添加如下函数//参数说明:第1个参数是从信息表里读取出来的类别ID,第2个参数是联动菜单类别 //这样这个函数织梦的模板dede网站模板。
第一步:channelunit.func.php中添加如下函数
//参数说明:第1个参数是从信息表里读取出来的类别ID,第2个参数是联动菜单类别 //这样这个函数就不限于只调用分类信息的信息类别了,还可以用于其它地方
function GetInfoType($tid,$bigt) { global $dsql; $typename = ”; $query = "Select ename From `dede_sys_enum` where evalue=$tid and egroup=’$bigt’"; $dsql->Execute(‘ename’,$query); while($row = $dsql->GetArray(‘ename’)) { $typename .= ($typename==” ? $row['ename'] : ‘,’.$row['ename']); } return $typename; }(V5.3)加到includecommon.func.php文件的//自定义函数接口上面。
第二步:在前台页面
请用{dede:arclist row=14 titlelen=32 noflag=’h’ addfields=’nativeplace’ channelid=’1′} <li>[[field:nativeplace function=GetInfoType(@me,'nativeplace')/]] <a href="[field:arcurl/]">[field:title/]</a></li> {/dede:arclist}
织梦手机模板来调试。
代码解释: 1.addfields=’nativeplace’ channelid=’1′这个是调用的附加表字段; ①. 为什么要调用附加表字段? 因为联动菜单的值就是存到附加表里面的,你仔细想想你有没有自己加过自定义联动菜单字段! ②. channelid参数是什么意思? 告诉解析函数你的附加表在哪个表!这里告诉的是附加表的ID,那么内容模型里面的ID对应的附加表你相dede后台模板信程序会自动帮你找到的。 2.[field:nativeplace /] 这一个就是调用的文档联动菜单的枚举值。附加表存储的也就是联动类别里对应的枚举值的值而已。 3. function=GetInfoType 这个就是我们上面的自定义函数调用!这点是dede手机模板不能变的。 4.(@me,’nativeplace’) 这里面有两个变量,第一个为@me 它的意思是当前值,固定不变的,说白了就是告诉我们上面那个自定义函数要查询的枚举值的值。第二个,是联动菜单的缓存组名,一般与前面的那个 [field:nativeplace/]中的红色nativeplace 字段名保持一致即可。
相关织梦的模板dede网站模板。声明: 本文由我的SEOUC技术文章主页发布于:2023-07-22 ,文章Dedecms首页模板中调用联动类别的方法,织梦文章主要讲述首页,模板,织梦网站建设源码以及服务器配置搭建相关技术文章。转载请保留链接: https://www.seouc.com/article/web_33720.html