3. Navigationsebene verschachteln
Verfasst: Di 13. Jul 2004, 14:33
Hallo!
Ich habe folgendes Problem:
Das Standard-Modul für die Subnavi gibt eine zweite Ebene in einer Tabelle aus und im Anschluß an diese Tabelle eine dritte Ebene in einer neuen Tabelle.
Ich benötige die 3. Navi-Ebene aber in die 2. hineingeschachtelt, d.h. beim Klick auf einen Punkt geht innerhalb der ersten Tabelle die 3. Naviebene auf.
Hier ist der Code des Moduls - egal wie ich die Variablen umbenenne und die Tabellen verschachtel - ich bekomm immer einen Compiler-Error.
Wer kann mir helfen?
<?php
if (is_array($tmp_data['sub'])) {
$data = $tmp_data;
echo '<table cellspacing="0" cellpadding="0" border="0"><td>';
foreach ($data['sub'] as $key => $data) {
/* 2. Navigations Ebene */
$tpl->reset();
$tpl->set('d', 'NAME', $data['name']);
$tpl->set('d', 'TARGET', $data['target']);
$tpl->set('d', 'HREF', $sess->url('front_content.php?idcat='.$data['idcat']));
$tpl->next();
if ($idcat == $data['idcat'] || is_array($data['sub'])) {
$tpl->generate('templates/navsecond_h_on.html');
} else {
$tpl->generate('templates/navsecond_h_off.html');
}
if (is_array($data['sub'])) {
$tmp_data2 = array();
$tmp_data2 = $data;
}
} // end for each
echo '</td></table>';
} // end if
if (is_array($tmp_data2['sub'])) {
$data = $tmp_data2;
echo '<table cellspacing="0" cellpadding="0" border="0"><td>';
foreach ($data['sub'] as $key => $data) {
/* 3. Navigations Ebene */
$tpl->reset();
$tpl->set('d', 'NAME', $data['name']);
$tpl->set('d', 'TARGET', $data['target']);
$tpl->set('d', 'HREF', $sess->url('front_content.php?idcat='.$data['idcat']));
$tpl->next();
if ($idcat == $data['idcat']) {
$tpl->generate('templates/navthird_h_on.html');
} else {
$tpl->generate('templates/navthird_h_off.html');
}
} // end foreach
echo '</td></table>';
} // end if ?>
Ich habe folgendes Problem:
Das Standard-Modul für die Subnavi gibt eine zweite Ebene in einer Tabelle aus und im Anschluß an diese Tabelle eine dritte Ebene in einer neuen Tabelle.
Ich benötige die 3. Navi-Ebene aber in die 2. hineingeschachtelt, d.h. beim Klick auf einen Punkt geht innerhalb der ersten Tabelle die 3. Naviebene auf.
Hier ist der Code des Moduls - egal wie ich die Variablen umbenenne und die Tabellen verschachtel - ich bekomm immer einen Compiler-Error.
Wer kann mir helfen?
<?php
if (is_array($tmp_data['sub'])) {
$data = $tmp_data;
echo '<table cellspacing="0" cellpadding="0" border="0"><td>';
foreach ($data['sub'] as $key => $data) {
/* 2. Navigations Ebene */
$tpl->reset();
$tpl->set('d', 'NAME', $data['name']);
$tpl->set('d', 'TARGET', $data['target']);
$tpl->set('d', 'HREF', $sess->url('front_content.php?idcat='.$data['idcat']));
$tpl->next();
if ($idcat == $data['idcat'] || is_array($data['sub'])) {
$tpl->generate('templates/navsecond_h_on.html');
} else {
$tpl->generate('templates/navsecond_h_off.html');
}
if (is_array($data['sub'])) {
$tmp_data2 = array();
$tmp_data2 = $data;
}
} // end for each
echo '</td></table>';
} // end if
if (is_array($tmp_data2['sub'])) {
$data = $tmp_data2;
echo '<table cellspacing="0" cellpadding="0" border="0"><td>';
foreach ($data['sub'] as $key => $data) {
/* 3. Navigations Ebene */
$tpl->reset();
$tpl->set('d', 'NAME', $data['name']);
$tpl->set('d', 'TARGET', $data['target']);
$tpl->set('d', 'HREF', $sess->url('front_content.php?idcat='.$data['idcat']));
$tpl->next();
if ($idcat == $data['idcat']) {
$tpl->generate('templates/navthird_h_on.html');
} else {
$tpl->generate('templates/navthird_h_off.html');
}
} // end foreach
echo '</td></table>';
} // end if ?>