国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > CMS > 織夢DEDE > 正文

織夢CMS如何調用四級欄目

2024-07-12 08:48:29
字體:
來源:轉載
供稿:網友
這篇文章主要為大家詳細介紹了織夢CMS如何調用四級欄目,具有一定的參考價值,感興趣的小伙伴們可以參考一下,有需要的朋友可以收藏方便以后借鑒。

織夢CMS調用四級欄目該如何處理呢?這個問題遇到的朋友一般不多,但是也是有的。

織夢調用四級子欄目,首先需要修改文件:/include/taglib/channel.lib.php,請將以下代碼全部復制替換上述文件:

 <?phpfunction lib_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();$cacheid = trim($cacheid);if($cacheid !='') {$likeType = GetCacheBlock($cacheid);if($likeType != '') return $likeType;} $reid = 0;$topid = 0;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("Select reid From dede_arctype where id='$typeid' ");if(is_array($dbrow)) $reid = $dbrow['reid'];}$likeType = '';if($type=='top'){$sql = "Select id,typename,typedir,isdefault,ispart,defaultname,namerule2,moresite,siteurl,sitepath,descriptionFrom dede_arctype where reid=0 And ishidden<>1 order by sortrank asc limit 0,$row";}else if($type=="son"){//if($_sys_globals['typeid']>0) $typeid = $_sys_globals['typeid'];if($typeid==0) {return '';}$sql = "Select id,typename,typedir,isdefault,ispart,defaultname,namerule2,moresite,siteurl,sitepath,descriptionFrom dede_arctype where reid='$typeid' And ishidden<>1 order by sortrank asc limit 0,$row";}else if($type=="self"){if($reid==0) {return '';}$sql = "Select id,typename,typedir,isdefault,ispart,defaultname,namerule2,moresite,siteurl,sitepath,descriptionFrom `dede_arctype` where reid='$reid' And ishidden<>1 order by sortrank asc limit 0,$row";}//And id<>'$typeid'$needRel = false;$dtp2 = new DedeTagParse();$dtp2->SetNameSpace("field","[","]");$dtp2->LoadSource($innertext);$dsql2 = clone $dsql;$dsql->SetQuery($sql);$dsql->Execute();$line = $row;//檢查是否有子欄目,并返回rel提示(用于二級菜單)if(ereg(':rel', $innertext)) $needRel = true; if(empty($sql)) return '';$dsql->SetQuery($sql);$dsql->Execute(); $totalRow = $dsql->GetTotalRow();$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()){$row['sonids'] = $row['rel'] = '';if($needRel){$row['sonids'] = GetSonIds($row['id'], 0, false);if($row['sonids']=='') $row['rel'] = '';else $row['rel'] = " rel='dropmenu{$row['id']}'";}//處理同級欄目中,當前欄目的樣式if( ($row['id']==$typeid || ($topid==$row['id'] && $type=='top') ) && $currentstyle!='' ){if($currentstyle!=''){$linkOkstr = $currentstyle;$row['typelink'] = GetOneTypeUrlA($row);$linkOkstr = str_replace("~rel~",$row['rel'],$linkOkstr);$linkOkstr = str_replace("~id~",$row['id'],$linkOkstr);$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->CTags as $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']++;}//Loop Colif($col>1){$i += $col - 1;$likeType .= " <>/r/n";}}//Loop for $ireset($dsql2);$dsql->FreeResult();return $likeType;}function lib_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 = "Select id,typename,typedir,isdefault,ispart,defaultname,namerule2,moresite,siteurl,sitepath,descriptionFrom dede_arctype where reid='$typeid' And ishidden<>1 order by sortrank asc limit 0,$row";//And id<>'$typeid'$dtp2 = new DedeTagParse();$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->CTags as $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";}//Loop Colif($col>1){$i += $col - 1;$likeType .= " <>/r/n";}}//Loop for $ireset($dsql3);$dsql2->FreeResult();return $likeType;}?>

2、在模板中調用實例:

{dede:channel type='son' typeid='3'}[field:typename/]<ul>[field:sonchannel0]<li><a href="[field:typelink/]">[field:typename/]</a></li>[field:sonchannel1]<li><a href="[field:typelink/]">---[field:typename/]</a></li>[field:sonchannel2]<li><a href="[field:typelink/]">===[field:typename/]</a></li>[field:sonchannel3]<li><a href="[field:typelink/]">===[field:typename/]</a></li>[/field:sonchannel3][/field:sonchannel2][/field:sonchannel1][/field:sonchannel0]</ul>{/dede:channel}


以上就是織夢CMS如何調用四級欄目的全部內容,希望對大家的學習和解決疑問有所幫助,也希望大家多多支持武林網。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 莱州市| 天长市| 天峻县| 万载县| 南汇区| 疏勒县| 衡阳县| 延吉市| 安吉县| 阿克陶县| 叶城县| 弥勒县| 上虞市| 朔州市| 仁化县| 惠东县| 思南县| 济南市| 湖北省| 清远市| 探索| 阿勒泰市| 马尔康县| 阳朔县| 方山县| 尚义县| 保德县| 繁峙县| 扶绥县| 陆良县| 三穗县| 遵化市| 斗六市| 临泽县| 太白县| 峨眉山市| 巴彦淖尔市| 饶平县| 阿拉尔市| 井陉县| 五寨县|