織夢dedecms自定義功能函式(4):typeid獲取頂級欄目id和名稱
阿新 • • 發佈:2019-02-07
前言
島主整理織夢自定義功能函式之四:通用tpyeid呼叫當前欄目的頂級欄目名稱,頂級欄目id(支援三級深度)。
如: 頂級欄目(id:30)---- 子欄目(id:56)----- 子子欄目(id:89),若當前欄目為 子子欄目,用當前欄目id 89,可以直接呼叫 頂級欄目 的名稱和id:30。
函式程式碼
請將程式碼加入到 http://www.dededao.com/include/extend.func.php 檔案中
//獲取頂級欄目名 function GetTopTypename($id) { global $dsql; $row = $dsql->GetOne("SELECT typename,topid FROM #@_ _arctype WHERE id= $id"); if ($row['topid'] == '0') { return $row['typename']; } else { $row1 = $dsql->GetOne("SELECT typename FROM #@_ _arctype WHERE id= $row[topid]"); return $row1['typename']; } }
//獲取頂級欄目id function GetTopTypeid($id) { global $dsql; $row = $dsql->GetOne("SELECT typename,topid FROM #@_ _arctype WHERE id= $id"); if ($row['topid'] == '0') return $id; else { $row1 = $dsql->GetOne("SELECT topid FROM #@_ _arctype WHERE id= $row[topid]"); if ($row1['topid'] == '0') return $row[topid]; $row2 = $dsql->GetOne("SELECT topid FROM #@_ _arctype WHERE id= $row1[topid]"); if ($row2['topid'] == '0') return $row1[topid]; } }
前臺呼叫
呼叫頂級欄目id:{dede:field name='typeid' function='GetTopTypeid(@me)'/}
呼叫頂級欄目名稱:{dede:field name='typeid' function='GetTopTypename(@me)'/}