今天,遇到一個問題,也就是一個頂部導航的問題,頂部導航是一個包起來的,好多同學可能會想,直接拿出來一個樣子,直接套用不就得了,但是,我想說的是,每個li的class都是不一樣的,class分別是class1 class2 class3 這種類型的,所以,就讓我想到了欄目的ID 那么怎么調用頂級欄目的ID 呢,具體看下面的代碼:
dede調用頂級欄目ID 方法一:
代碼如下:
{dede:field.id function="GetTopid(@me)"/}
織夢者首推這一方法,經過測試是可行的.
dede調用頂級欄目ID 方法二:
首先,在所需要調用頂級欄目ID的地方,添加這段標簽語法:
代碼如下:
{dede:type}[feild:topid/]{/dede:type}
第二,修改源文件,找到include目錄下的taglib目錄下的type.lib.php,找到這條語句:
代碼如下:
$row = $dsql->GetOne("Select id,typename,typedir,isdefault,ispart,defaultname,namerule2,moresite,siteurl,sitepath
From `dede_arctype` where id='$typeid' ");
修改成為:
代碼如下:
$row = $dsql->GetOne("Select id,topid,typename,typedir,isdefault,ispart,defaultname,namerule2,moresite,siteurl,sitepath
From `dede_arctype` where id='$typeid' ");
在if(!is_array($row)) return ";下一行添加
代碼如下:
if( $row['topid']==0){$row['topid']=$row['id'];}
這樣,這條語句在頂級欄目還是子欄目,都可以調用了:
代碼如下:
{dede:channelartlist typeid='1,2,3,4,5,6,7' row=7}
{dede:field name='typename'/}
{/dede:channelartlist}
希望本文所述對大家的dedecms建站有所幫助。
此文由 網站目錄_網站網址收錄與提交入口 編輯,未經允許不得轉載!: