No wlasnie myslalem zeby zrobic tutaj drzewo, w sensie metode rekurencji, ale doszedlem do wniosku, ze tak na prawde te elementy sa stale.
pierwszy poziom to Menu (belka na gorze ekranu)
drugi poziom to SubMenu, z lewej taki box z menu.
trzeci to Tabmenu, czyli tak jakby zakladki na SubMenu.
Nie umiem juz bardziej wyjasnic o co mi chodzi.
Dobra, moj kod ewolulowal do postaci takiej, jest rekurencja, jest wszystko, poziomy nie koncza sie na 3.
protected function _loadMenu($index = 0, $parentID = 0) {
$this->_arMenu[$index] = $this->_getMenuItems($parentID);
if(!empty($this->_arMenu
[$index])) {
foreach ($this->_arMenu[$index] as $itemIndex => $arMenuItem) {
if (isset($this->_arGlobal
[$index]) AND
$this->_arGlobal
[$index] == $arMenuItem['page_filename']) {
$this->_arActiveMenuItemIndex[$index] = $itemIndex;
if ($arMenuItem['page_is_parent'] == 1) {
$this->_loadMenu($index+1, $arMenuItem['page_id']);
}
} else {
$this->_arActiveMenuItemIndex[$index] = 0;
}
}
}
}
Wiec, zrobic zrobilem, pytanie brzmi czy optymalnie, gdyz wykonuje 3 zapytania, ale wydaje mi sie ze nie da sie inaczej, gdyz zeby pobrac podmenu potrzebuje id rodzica.
Pozdrawiam
Dobra, poczytalem o tych drzewkach IP, skoro okazaly sie szybsze, to dlaczego by ich nie zaimplementowac, wiec i tak zrobilem.
Pozdrawiam Nospor, dziekowka za pomoc.