POST TIME:2018-03-15 20:52
有時候我們會在列表頁或者內容詳情頁調用指定的頂級欄目名稱及鏈接,試了很多方法,有的只能調用所有頂級欄目或者是該頻道下面的子欄目,實在是讓人感到費解。。下面說說各種欄目名稱的調用方法:
1、{dede:field name="typename"} 這是調用當前欄目的名稱
2、{dede:channel type='son' row='5'} <a href="[field:typeurl/]">[field:typename/]</a> {/dede:channel} 這是調用該頂級頻道下所有字欄目,row代表調用5條
3、{dede:type typeid='欄目id'} <a href="[field:typeurl/]">[field:typename/]</a> {/dede:type} 表示調用指定id的欄目,不過只能調用一個,要想多個調用就只能重復多次調用該標簽
4、 {dede:channel type='top'}<a>[field:typename/]</a> {/dede:channel}調用子欄目的當前頂級欄目名稱
下面是調用頂級欄目名稱的方法:
方法一:
{dede:field.typeid runphp=’yes’}$ID = @me; $sql = “SELECT * FROM `dede_arctype` WHERE id=$ID”;$query = mysql_query($sql);$row=mysql_fetch_array($query); $relID = “$row[reid]“; if($relID == 0) {@me = $row[typename];}else{$sql = “SELECT `typename` FROM `dede_arctype` WHERE id=$relID”;$query = mysql_query($sql);$row=mysql_fetch_array($query); @me = $row[typename];}{/dede:field.typeid}
這個方法語句有些長。
織夢者重點推薦方法二
方法二:
{dede:field.title runphp=’yes’}list($toptype,$sontype)=split(‘/’,@me);@me=$toptype;{/dede:field.title}
方法三:
{dede:field.typeid runphp='yes'}$ID = @me; $sql = "SELECT * FROM `dede_arctype` WHERE id=$ID";$query = mysql_query($sql);$row=mysql_fetch_array($query); $relID = "$row[reid]"; $topID="$row[topid]"; if($relID == 0) {@me = $row[typename];}else{$sql = "SELECT `typename` FROM `dede_arctype` WHERE id=$topID";$query = mysql_query($sql);$row=mysql_fetch_array($query); @me = $row[typename];}{/dede:field.typeid}
這個方法是改良過的,可以針對無限子欄目獲取頂級欄目,方法一二都是針對二級欄目。