首页 > 技术支撑 > 织梦学习

织梦dedecms首页如何调用联动类别代码

分类: 织梦学习  发布者: 会员:虎哥
如何在织梦dedecms v5.6 首页调用联动类别代码,如何实现呢?
第一步: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; } //------------------
Add By CxChina.Com ----- End ------------------------- (V5.3)加到/include/common.func.php文件的 class="quote">
//自定义函数接口
上面。
第二步:在前台页面请用 class="quote">
{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对应的附加表你相信程序会自动帮你找到的。 
2.[field:nativeplace /] 这一个就是调用的文档联动菜单的枚举值。附加表存储的也就是联动类别里对应的枚举值的值而已。 
3. function=GetInfoType 这个就是我们上面的自定义函数调用!这点是不能变的。 
4.(@me,'nativeplace') 这里面有两个变量,第一个为@me 它的意思是当前值,固定不变的,
说白了就是告诉我们上面那个自定义函数要查询的枚举值的值。第二个,是联动菜单的缓存组名,
一般与前面的那个[field:nativeplace/]中的红色nativeplace 字段名保持一致即可。

感谢 会员:虎哥 分享文章,亦感谢文章原作者为我们提供如此优秀信息,如果此信息对您有帮助,请购买正版以支持作者!
---------------------------
此信息仅供个人学习、研究免费使用,禁止非法转播。
免责申明:本信息由 会员:虎哥 搜集整理发布,版权归原作者及发布者所有,您如有异议请 举报 或者 版权申诉
六出奇e站内部资源仅提供学习的平台,所有资料均来自于网络,版权归原创者所有!
六出奇e站内部资源不提供任何保证,并不承担任何法律责任。
如果该信息对您的版权或者利益造成损害,请提供相应的资质证明提交 版权投诉,我们将于3个工作日内予以处理。
六出奇e站内部资源采用 BY-NC-SA 协议进行授权 转载请注明原文链接:
织梦dedecms首页如何调用联动类别代码 http://www.lcqez.com/news/76.html

嘿,我来帮您!

找不到需要的信息?请给我们留言

注意:本需求仅接收资源需求信息。
系统自动过滤不符合要求的信息!

其他信息请提交 站内信息 给技术客服!