位置: IT常识 - 正文

织梦实现三级多级栏目嵌套调用教程(织梦如何使用)

编辑:rootadmin

推荐整理分享织梦实现三级多级栏目嵌套调用教程(织梦如何使用),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:织梦技巧,织梦可以放两个模板吗,织梦系统,织梦技巧,织梦生成速度,织梦系统基本参数,织梦生成速度,织梦可以放两套模板吗,内容如对您有帮助,希望把文章链接给更多的朋友!

将三级目录全部显示出来,而系统的channel标签只能获取下级分类,所以就报改了channel.lib.php这个文件,让他支持多级栏目嵌套,代码如下:

织梦实现三级多级栏目嵌套调用教程(织梦如何使用)

<?phpfunctionlib_channel(&$ctag,&$refObj){global$_sys_globals,$envs,$dsql;$attlist="typeid|0,reid|0,row|100,col|1,type|son,currentstyle|";FillAttsDefault($ctag->CAttribute->Items,$attlist);extract($ctag->CAttribute->Items,EXTR_SKIP);$innertext=$ctag->GetInnerText();if(empty($typeid)&&$envs['typeid']!=0){$typeid=$envs['typeid'];$reid=$envs['reid'];}else{$reid=0;}if($type==''||$type=='sun')$type="son";if($innertext=='')$innertext=GetSysTemplets("channel_list.htm");if($reid==0&&$typeid>0){$dbrow=$dsql->GetOne("SelectreidFromnet_arctypewhereid='$typeid'");if(is_array($dbrow))$reid=$dbrow['reid'];}$likeType='';if($type=='top'){$sql="Selectid,typename,typedir,isdefault,ispart,defaultname,namerule2,moresite,siteurl,sitepath,descriptionFromnet_arctypewherereid=0Andishidden<>1orderbysortrankasclimit0,$row";}elseif($type=="son"){//if($_sys_globals['typeid']>0)$typeid=$_sys_globals['typeid'];if($typeid==0){return'';}$sql="Selectid,typename,typedir,isdefault,ispart,defaultname,namerule2,moresite,siteurl,sitepath,descriptionFromnet_arctypewherereid='$typeid'Andishidden<>1orderbysortrankasclimit0,$row";}elseif($type=="self"){if($reid==0){return'';}$sql="Selectid,typename,typedir,isdefault,ispart,defaultname,namerule2,moresite,siteurl,sitepath,descriptionFrom`net_arctype`wherereid='$reid'Andishidden<>1orderbysortrankasclimit0,$row";}//Andid<>'$typeid'$dtp2=newDedeTagParse();$dtp2->SetNameSpace("field","[","]");$dtp2->LoadSource($innertext);$dsql2=clone$dsql;$dsql->SetQuery($sql);$dsql->Execute();$line=$row;$GLOBALS['autoindex']=0;for($i=0;$i<$line;$i++){if($col>1)$likeType.="<dl>\r\n";for($j=0;$j<$col;$j++){if($col>1)$likeType.="<dd>\r\n";if($row=$dsql->GetArray()){if($type=='self'&&$row['id']==$typeid)//处理同级栏目中,当前栏目的样式{if($currentstyle!=''){$linkOkstr=$currentstyle;$row['typelink']=GetOneTypeUrlA($row);$linkOkstr=str_replace("~typelink~",$row['typelink'],$linkOkstr);$linkOkstr=str_replace("~typename~",$row['typename'],$linkOkstr);$likeType.=$linkOkstr;}}else{$row['typelink']=$row['typeurl']=GetOneTypeUrlA($row);if(is_array($dtp2->CTags)){foreach($dtp2->CTagsas$tagid=>$ctag){if(isset($row[$ctag->GetName()])){$dtp2->Assign($tagid,$row[$ctag->GetName()]);}elseif(preg_match('/^sonchannel[0-9]*$/',$ctag->GetName())){$dtp2->Assign($tagid,lib_channel_son($ctag,$row['id'],$dsql2));}}}$likeType.=$dtp2->GetResult();}}if($col>1)$likeType.="</dd>\r\n";$GLOBALS['autoindex']++;}//LoopColif($col>1){$i+=$col-1;$likeType.="</dl>\r\n";}}//Loopfor$ireset($dsql2);$dsql->FreeResult();return$likeType;}functionlib_channel_son($ctag,$typeid=0,$dsql2){$attlist="row|100,col|1,currentstyle|";FillAttsDefault($ctag->CAttribute->Items,$attlist);extract($ctag->CAttribute->Items,EXTR_SKIP);$innertext=$ctag->GetInnerText();$dsql3=clone$dsql2;$likeType='';//if($_sys_globals['typeid']>0)$typeid=$_sys_globals['typeid'];if($typeid==0){return'';}$sql="Selectid,typename,typedir,isdefault,ispart,defaultname,namerule2,moresite,siteurl,sitepath,descriptionFromnet_arctypewherereid='$typeid'Andishidden<>1orderbysortrankasclimit0,$row";//Andid<>'$typeid'$dtp2=newDedeTagParse();$dtp2->SetNameSpace("field","[","]");$dtp2->LoadSource($innertext);$dsql2->SetQuery($sql);$dsql2->Execute();$line=$row;for($i=0;$i<$line;$i++){if($col>1)$likeType.="<dl>\r\n";for($j=0;$j<$col;$j++){if($col>1)$likeType.="<dd>\r\n";if($row=$dsql2->GetArray()){$row['typelink']=$row['typeurl']=GetOneTypeUrlA($row);if(is_array($dtp2->CTags)){foreach($dtp2->CTagsas$tagid=>$ctag){if(isset($row[$ctag->GetName()])){$dtp2->Assign($tagid,$row[$ctag->GetName()]);}elseif(preg_match('/^sonchannel[0-9]*$/',$ctag->GetName())){$dtp2->Assign($tagid,lib_channel_son($ctag,$row['id'],$dsql3));}}}$likeType.=$dtp2->GetResult();}if($col>1)$likeType.="</dd>\r\n";}//LoopColwww.dede58.comif($col>1){$i+=$col-1;$likeType.="</dl>\r\n";}}//Loopfor$ireset($dsql3);$dsql2->FreeResult();return$likeType;}?>

将以上代码全部替换channel.lib.php文件内容后就可以了,附前端调用的示例:

{dede:channeltype='top'}[field:typename/]<ul>[field:sonchannel0]<li><ahref="[field:typelink/]">[field:typename/]</a></li>[field:sonchannel1]<li><ahref="[field:typelink/]">---[field:typename/]</a></li>[field:sonchannel2]<li><ahref="[field:typelink/]">===[field:typename/]</a></li>[field:sonchannel3]<li><ahref="[field:typelink/]">===[field:typename/]</a></li>[/field:sonchannel3][/field:sonchannel2][/field:sonchannel1][/field:sonchannel0]</ul>{/dede:channel}

免责

本文链接地址:https://www.jiuchutong.com/zhishi/311664.html 转载请保留说明!

上一篇:织梦dedecms调用会员详细字段信息(织梦常用调用标签)

下一篇:dedecms相关文章标签匹配tag、关键词、标题及调用全站相关文章方(dedecms 收费)

  • 企业所得税属于地方税吗
  • 增值税加计抵减政策
  • 出租房屋收取的水电费如何记账
  • 销售部的招待费计入什么费用
  • 农业生产成本二级科目有福利费支出吗
  • 海关废品回收
  • 企业所得税业务费扣除标准
  • 公司预支了然后来报销的帐怎么做?
  • 银行贷款损失的认定标准
  • 自产自销免税物品包括哪些
  • 一般纳税人进项发票认证操作流程
  • 企业外包项目如何确认收入成本配比?
  • 固定资产的初始成本包括
  • 计提个人生产经营所得个税需要贴附件吗
  • 金银首饰消费税怎么算
  • 注册资本 变更
  • 还有主营业务收入这个科目
  • 用工会经费给员工发工资
  • macos15关闭sip
  • 固定资产减值准备影响折旧吗
  • 开机自动进入安装模式
  • win10下载的软件打不开
  • 职业病治疗费用谁承担
  • 外资企业采购退税流程
  • 车前草的功效与作用及禁忌症
  • 残疾人就业保障金
  • 收到的税费返还减少说明什么
  • framework在哪
  • 投影仪属于固定资产哪一类
  • chrome os安装到u盘
  • 浅谈一下新冠的好处
  • php取字符串
  • 滴滴打车老板起源故事
  • 现金销售商品的会计分录
  • 公司租房电费怎么算
  • 所得税汇算清缴需要调增的项目
  • 收到赔偿金怎么写收据?
  • 怎么填红字信息表
  • 企业的资产评估报告在哪里获取
  • 用发票做账是什么意思?
  • 车辆购置税收优惠
  • 查看db2状态
  • 注册资金只能增加不能减少吗
  • 超市小规模税负怎么算
  • 超过规定标准扣几分罚款
  • 挂靠的项目如何做账?
  • 小型微利企业是小微企业吗
  • 为什么当月增加的无形资产当月摊销
  • 公司销售给客户的感谢信
  • 验资账户需要对账吗
  • 手写账目表格怎么做
  • 什么发票可以抵扣税
  • 如何调整以前年度错账
  • sql参数化是什么意思
  • mysql文件存储路径设置
  • linux清屏幕命令
  • mission controller
  • centos8 apache
  • os x10.10.4beta6下载地址 os x10.10.4beta6官方下载网址
  • u盘比特率
  • windows窗口跑到了侧面
  • window 8
  • korok是什么文件
  • win10每次登录都要输入微软密码
  • w10资源管理器怎么打开快捷方式
  • opengl绘图
  • javascript中的闭包
  • bat xcopy copy
  • javascript中的继承
  • javascript总结笔记
  • js的delegate
  • javascript如何定义函数
  • js操作对象的方法
  • android设计模式的应用场景
  • 湖南省电子国税
  • 企业自建旧房产怎么处理
  • 湖南国家税务总局官网
  • 武汉经济技术开发区法院立案庭电话
  • 汽车购车发票开完票能更改名字吗?
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设