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

首頁 > CMS > 織夢DEDE > 正文

詳解織夢dedecms5.7 無限級多級欄目菜單調用方法

2024-07-12 08:53:50
字體:
來源:轉載
供稿:網友

以前在用到5.7無限級欄目列表菜單時下載了網上的資料都未成功,因此我參考網上及dedecms本身的channel.lib.php及cattree.lib.php制作了調用標簽。

1、在include/taglib建立randomartlist.lib.php

內容如下:

  <?phpif(!defined('DEDEINC')) exit('Request Error!'); function lib_randomartlist(&$ctag, &$refObj){    global $dsql;    //屬性處理     //topid 指定頂級樹 id ,指定后,前一個屬性將無效    $attlist="typeid|0,showall|,currentstyle|,cacheid|";    FillAttsDefault($ctag->CAttribute->Items,$attlist);    extract($ctag->CAttribute->Items, EXTR_SKIP);    $revalue = '';    //讀取固定的緩存塊    $cacheid = trim($cacheid);    if($cacheid !='') {        $revalue = GetCacheBlock($cacheid);        if($revalue != '') return $revalue;    }    //如果屬性里沒指定欄目id,從引用類里獲取欄目信息    if(empty($typeid))    {        if( isset($refObj->TypeLink->TypeInfos['id']) )        {            $typeid = $refObj->TypeLink->TypeInfos['id'];            $reid = $refObj->TypeLink->TypeInfos['reid'];            $topid = $refObj->TypeLink->TypeInfos['topid'];        }        else {          $typeid = 0;      }    }    else    {         $row2 = $dsql->GetOne("SELECT reid,topid,channeltype,ispart FROM `dede_arctype` WHERE reid='$topid' ");        if(!is_array($row2))        {            $typeid = $reid = $topid = $channeltype = $ispart = 0;        } else {            $reid = $row2['reid'];            $channeltype = $row2['channeltype'];            $ispart = $row2['ispart'];            $typepid = $row2['id'];        }    }    //調用Typeid    if( !empty($topid) )    {        $topQuery = "SELECT id,typename,typedir,isdefault,ispart,defaultname,namerule2,moresite,siteurl,sitepath FROM `dede_arctype` WHERE reid='$topid' And ishidden<>1 order by sortrank asc";    }  $dsql->Execute('t', $topQuery);  while($row = $dsql->GetArray('t'))  {      $row['typelink'] = GetOneTypeUrlA($row);      //處理同級欄目中,當前欄目的樣式                if( $row['id']==$typeid  && $currentstyle!='' )                {                    $linkOkstr = $currentstyle;                    $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);                    $revalue .= $linkOkstr;                }                else                {                  $revalue .= "    <li><a href='{$row['typelink']}'>{$row['typename']}</a></li>/n";                }    randomartlistSon($row['id'],$typeid,$currentstyle, $revalue);  }  if($cacheid !='') {        WriteCacheBlock($cacheid, $revalue);  }    return $revalue;} function randomartlistSon($id,$typeid,$currentstyle,&$revalue){    global $dsql;    $query = "SELECT id,typename,typedir,isdefault,ispart,defaultname,namerule2,moresite,siteurl,sitepath FROM `dede_arctype` WHERE reid='{$id}' And ishidden<>1 order by sortrank asc";    $dsql->Execute($id, $query);    $thisv = '';  while($row = $dsql->GetArray($id))  {      $row['typelink'] = GetOneTypeUrlA($row);      //處理同級欄目中,當前欄目的樣式                if( $row['id']==$typeid  && $currentstyle!='' )                {                    $linkOkstr = $currentstyle;                    $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);                    $thisv .= $linkOkstr;                }                else                {                  $thisv .= "    <li><a href='{$row['typelink']}'>{$row['typename']}</a></li>/n";                }     randomartlistSon($row['id'],$typeid,$currentstyle, $thisv);  }  if($thisv!='') $revalue .= "    <ul>/n$thisv    </ul>/n";}

2、調用方式:

     <div class="alist">          <ul>              {dede:randomartlist topid='12' currentstyle="<li><a href='~typelink~' class='thisclass'>~typename~</a></li>"}                 <li><a href="{dede:field name='typeurl'/}" title="{dede:field name='typename'/}">{dede:field name='typename'/}</a></li>              {/dede:randomartlist}            </ul>      </div>

3、css方式:

      .alist{}      /*第一層修飾*/     .alist ul {}     .alist ul li {}     .alist ul li a{}     .alist ul li a:hover,.alist ul li .thisclass{}      /*第二層修飾*/     .alist ul li ul{}     .alist ul li ul li{}     .alist ul li ul li a{}     .alist ul li ul li a:hover,.alist ul li ul li  .thisclass{}

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持武林網。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 西安市| 平潭县| 左云县| 凌云县| 古交市| 县级市| 阳高县| 平果县| 黄石市| 江津市| 托里县| 岳池县| 顺平县| 永济市| 东光县| 乌什县| 芒康县| 万全县| 益阳市| 公主岭市| 出国| 阿瓦提县| 郎溪县| 阿拉尔市| 庄浪县| 扎兰屯市| 南涧| 安图县| 城固县| 扎囊县| 黔南| 宽甸| 萨嘎县| 龙井市| 托克逊县| 凤台县| 临高县| 江城| 子长县| 若羌县| 军事|