Heim > Artikel > CMS-Tutorial > So erhalten Sie ein N-Level-Listenverknüpfungsbaummenü für eine beliebige Spalte in DedeCms
Wie erhält DedeCms das N-Level-Listen-Link-Baummenü einer beliebigen Spalte?
DedeCms ruft das N-Level-Listen-Link-Baummenü einer beliebigen Spalte ab. Der Editor erinnert daran, dass die folgende Änderungsmethode auf das Standardtabellenpräfix von DedeCMS anwendbar ist, wenn Sie es während der Installation geändert haben Aufmerksamkeit auf die Änderung.
Empfohlenes Lernen: Dreamweaver cms
Fügen Sie den folgenden Code am Ende der Datei includechannelunit.func.php hinzu:
/*树形栏目补充,获取二级,san级,四级栏目列表/ function getProductTree($typeid) { $linkList = ""; $dsql = new DedeSql(false); $dsql->SetQuery("select ID,typedir,typename,isdefault from dede_arctype where reID = '$typeid' order by sortrank"); $dsql->Execute(); while($row=$dsql->GetObject()) { $typelink = GetTypeUrl($row->id,MfTypedir($row->typedir),$row->isdefault,$row->defaultname,$row->ispart,$row->namerule2,$row->moresite,$row->siteurl,$row->sitepath); $linkList .= "\n<div class=\"firsttype\"><a href=\"$typelink\"><b>".$row->typename."</b></a></div>\n\n"; $linkList .= getSonClass($row->ID); } $dsql->Close(); return $linkList; } //获得小类栏目链接 function getSonClass($parentid) { $linkList = ""; $dsql = new DedeSql(false); $dsql->SetQuery("Select ID,typedir,typename,isdefault From dede_arctype where reID='$parentid' order by sortrank"); $dsql->Execute($parentid); while($row=$dsql->GetObject($parentid)) { $typelink = GetTypeUrl($row->id,MfTypedir($row->typedir),$row->isdefault,$row->defaultname,$row->ispart,$row->namerule2,$row->moresite,$row->siteurl,$row->sitepath); $linkList .= "<li class=\"secondtype\"><a href=\"$typelink\">".$row->typename."</a></li>\n"; $linkList .= getSonClass2($row->ID); } return $linkList; } function getSonClass2($parentid) { $linkList = ""; $dsql = new DedeSql(false); $dsql->SetQuery("Select ID,typedir,typename,isdefault From dede_arctype where reID='$parentid' order by sortrank"); $dsql->Execute($parentid); while($row=$dsql->GetObject($parentid)) { $typelink = GetTypeUrl($row->id,MfTypedir($row->typedir),$row->isdefault,$row->defaultname,$row->ispart,$row->namerule2,$row->moresite,$row->siteurl,$row->sitepath); $linkList .= "<li class=\"thirdtype\"><a href=\"$typelink\">".$row->typename."</a></li>\n"; $linkList .= getSonClass3($row->ID); } return $linkList; } function getSonClass3($parentid) { $linkList = ""; $dsql = new DedeSql(false); $dsql->SetQuery("Select ID,typedir,typename,isdefault From dede_arctype where reID='$parentid' order by sortrank"); $dsql->Execute($parentid); while($row=$dsql->GetObject($parentid)) { $typelink = GetTypeUrl($row->id,MfTypedir($row->typedir),$row->isdefault,$row->defaultname,$row->ispart,$row->namerule2,$row->moresite,$row->siteurl,$row->sitepath); $linkList .= "<li class=\"fourthtype\"><a href=\"$typelink\">".$row->typename."</a></li>\n"; } return $linkList; } /*树形栏目补充*/
2 in der Vorlage 🎜>
{dede:channel function='getProductTree(2)'}{/dede:channel}Nenn es einfach. Hier ist 2 in getProductTree(2) die Spalten-ID der Produktanzeige. Wenn Ihre Version anders ist, ändern Sie sie bitte entsprechend.
Das obige ist der detaillierte Inhalt vonSo erhalten Sie ein N-Level-Listenverknüpfungsbaummenü für eine beliebige Spalte in DedeCms. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!