dede織夢模板中添加頂級欄目id的方法總結(jié),使用dede頂級欄目id可以實(shí)現(xiàn)很多功能比如:在每個(gè)列表頁調(diào)用不同的欄目圖片(同一頂級欄目調(diào)用相同的圖片),如果我們做N個(gè)欄目就意味著要做N個(gè)列表頁模板,顯示這種方法是不可取的,那么我們怎樣來更快更簡單的處理這個(gè)問題呢,dede模板的思路是這樣的:調(diào)用頂級欄目ID,然后將圖片尾部添加為ID號如:img1.jpg 即為imgID.jpg這樣我們只需要制作圖片就可以了;大概意思就是這樣的吧,下面是織夢者在網(wǎng)絡(luò)中收集到的方法:
dede調(diào)用頂級欄目ID 方法一:
{dede:field.typeid function="GetTopid(@me)"/}
站長地帶首推這一方法,經(jīng)過測試是可行的
dede調(diào)用頂級欄目ID 方法二:
首先,在所需要調(diào)用頂級欄目ID的地方,添加這段標(biāo)簽語法
{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'];}
這樣,這條語句在頂級欄目還是子欄目,都可以調(diào)用了。