Witam, mam problem z tworzeniem dynamicznego menu. Moja tablica menu wygląda tak:
(
[0] => stdClass Object
(
[id] => 11
[nazwa] => test
[glebokosc] => 0
[sciezka] => test
(
[0] => stdClass Object
(
[id] => 123
[nazwa] => test1
[glebokosc] => 1
[sciezka] => test/test1
(
[0] => stdClass Object
(
[id] => 234
[nazwa] => test2
[glebokosc] => 2
[sciezka] => test/test1/test2
(
[0] => stdClass Object
(
[id] => 34534
[nazwa] => test3
[glebokosc] => 3
[sciezka] => test/test1/test2/test3
(
)
)
[... itd.]
Chciałabym zrobić takie menu
http://geedmo.github.io/yamm3/ Do budowy strony używam bootstrapa + powyższy skrypt.
Staram się stworzyć dynamicznie drzewo w formie megamenu yamm, ale mam kłopot z napisaniem skryptu tworzącego odpowiednie zagnieżdzenia html listy zgodnie z tym co jest na stronie Yamm. Na razie mam takie coś:
function megamenu( $array ) {
foreach( $array as $k ) {
echo '<a href="/'.$k->sciezka.'.html" title="'.$k->nazwa.'">'.$k->nazwa.'</a>'; if ( empty( $k->podmenu ) == false ) { megamenu( $k->podmenu );
}
}
}
Ten skrypt przerabiałam 1000 razy, żeby pasowało do tego z przykładu na stronie yamm3 ale nie dałam rady.
Menu powinno wygladac tak:
<div class="navbar yamm navbar-default navbar-fixed-top"> <div class="navbar-header"> <button type="button" data-toggle="collapse" data-target="#navbar-collapse-1" class="navbar-toggle"><span class="icon-bar"></span><span class="icon-bar"></span><span class="icon-bar"></span></button><a href="#" class="navbar-brand">Yamm Megamenu
</a> <div id="navbar-collapse-1" class="navbar-collapse collapse"> <ul class="nav navbar-nav"> <!-- Classic list -->
<li class="dropdown"><a href="#" data-toggle="dropdown" class="dropdown-toggle">List
<b class="caret"></b></a> <ul class="dropdown-menu"> <!-- Content container to add padding -->
<div class="yamm-content"> <ul class="col-sm-2 list-unstyled"> <ul class="col-sm-2 list-unstyled"> <li><a href="#"> Link Item
</a></li> <li><a href="#"> Link Item
</a></li> <li><a href="#"> Link Item
</a></li> <li><a href="#"> Link Item
</a></li> <li><a href="#"> Link Item
</a></li> <li><a href="#"> Link Item
</a></li> <ul class="col-sm-2 list-unstyled"> <ul class="col-sm-2 list-unstyled"> <li><a href="#"> Link Item
</a></li> <li><a href="#"> Link Item
</a></li> <li><a href="#"> Link Item
</a></li>
Czy ktoś może spotkał się z takim problemem i ma jakiś gotowy skrypt albo może pomóc jak w zależności od zagłębienia menu zrobić inny kod html i przy okazji odpowiednio podomykać </li> i </ul>? No chyba, że są inne ciekawsze i prostsze do zastosowania skrypty do tworzenia takich dużych rozwijanych menu z tablicy podobnej do mojej.
Jeżeli post nie pasuje do menu to proszę o wyrozumiałość i przeniesienie posta.
Ten post edytował natasha 20.05.2015, 11:04:56