dedecms 5.6 首页调用联动类别
所属分类:
CMS教程 / dedecms
阅读数:
1302
收藏 0赞 0分享
实现方法:
第一步: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 字段名保持一致即可。
dedecms制作英文站需要修改的地方
我一直都不喜欢用DEDE做英文站,不是不好,而是需要改动的地方太多了,并不像一些网上说的改改字体,改改编码那么轻松的事情。
收藏 0赞 0分享
dedecms英文模板 英文网站程序的选择
dedecms英文模板目前很多,但一眼看上去都是一些老版本了,而且卖模板的人说是SEO过,其实网站程序的优化都没有做好,还不如自己动手改改 dedecms官方默认的模板。
收藏 0赞 0分享
DEDECMS 支付宝操作手册
织梦CMS携手支付宝推出DedeCMS V5.6全新支付接口,DedeCMS系统为国内做早开源的PHP内容管理系统,系统除了拥有强大,灵活的内容管理功能之外,还增加了分类、书库、黄页、圈子、问答等模块,同时该版本中整合了最新支付宝在线支付接口。
收藏 0赞 0分享
查看更多