Hi zusammen,
ihr habt es nun sicherlich schon ein paar mal gehört, aber ich muß es einfach nochmal sagen, daß ihr mit redaxo wirklich ein klasse cms entwickelt habt. Schön schlank, übersichtlich und trotzdem lässt sich einiges damit realisieren.
Nun aber zu meinem Problem. Ich bastel gerade an einer Seite rum, bei der die Navigationspunkte, wenn Sie angeklickt wurden, aktiv bleiben sollen. Links ist meine Hauptnavigation und die Unterpunkte erscheinen dann in einer langen Leiste am Beginn der Seite.
Hat mir jemand nen tip, wie ich das mit den aktiven Menüpunkten hinkrieg?
Vielen Dank auf jedenfall schonmal im Voraus.
cu
splaesch
Hallo,
Wir haben in letzter Zeit festgestellt, dass die Kommunikation via Slack viel schneller und zielführender ist als ein Beitrag im Forum. Aufgrund der neuen und besseren Möglichkeiten der Kommunikation haben wir uns entschlossen das Forum nur noch als Archiv zur Verfügung zu stellen. Somit bleibt es weiterhin möglich hier nach Lösungen zu suchen. Neue Beiträge können nicht mehr erstellt werden.
Wir empfehlen, für deine Fragen/Probleme Slack zu nutzen. Dort sind viele kompetente Benutzer aktiv und beantworten jegliche Fragen, gerne auch von REDAXO-Anfängern! Slack wird von uns sehr intensiv und meistens "rund um die Uhr" benutzt
Selbst einladen kannst Du dich hier: https://redaxo.org/slack/
Wir haben in letzter Zeit festgestellt, dass die Kommunikation via Slack viel schneller und zielführender ist als ein Beitrag im Forum. Aufgrund der neuen und besseren Möglichkeiten der Kommunikation haben wir uns entschlossen das Forum nur noch als Archiv zur Verfügung zu stellen. Somit bleibt es weiterhin möglich hier nach Lösungen zu suchen. Neue Beiträge können nicht mehr erstellt werden.
Wir empfehlen, für deine Fragen/Probleme Slack zu nutzen. Dort sind viele kompetente Benutzer aktiv und beantworten jegliche Fragen, gerne auch von REDAXO-Anfängern! Slack wird von uns sehr intensiv und meistens "rund um die Uhr" benutzt
Selbst einladen kannst Du dich hier: https://redaxo.org/slack/
- Markus.Staab
- Entwickler
- Beiträge: 9634
- Registriert: 29. Jan 2005, 15:50
- Wohnort: Aschaffenburg/Germany
- Kontaktdaten: ICQ Website
Also meine Hauptnavigation sieht so.
Anzuschauen auch unter http://cms.hshirrle.de. Dort sollte dann, wenn z.B. Über mich angeklickt ist, der Punkt in der Hauptnavigation auch aktiv bleiben (wie z.B. auf http://www.public-4u.de/).
Vielen Dank für die Hilfe.
cu
Splaesch
Code: Alles auswählen
<div id="sub-block2">
<?php echo '<ul class="navigation">';
foreach (OOCategory::getRootCategories() as $lev1):
if($lev1->isOnline()):
echo '<li><a href="'.$lev1->getUrl().'">'.$lev1->getName().'</a>';
$lev1Size = sizeof($lev1->getChildren());
echo '</li>';
endif;
endforeach;
echo '</ul>';
/*
$navigation = OOTemplate::getNavigation();
print $navigation;
*/
?>
</div>
Vielen Dank für die Hilfe.
cu
Splaesch
- Thomas.Blum
- Entwickler
- Beiträge: 5063
- Registriert: 24. Aug 2004, 22:11
- Wohnort: Dresden
- Kontaktdaten: Website
Hej,
Thomas
Code: Alles auswählen
<div id="sub-block2">
<?php
$path = explode( '|', $this->getValue("path").$this->getValue("article_id"));
$path1 = $path[1];
$path2 = $path[2];
$path3 = $path[3];
echo '<ul class="navigation">';
foreach (OOCategory::getRootCategories() as $lev1):
if($lev1->isOnline()):
if ($lev1->getId() == $path1) {
echo '<li>'.$lev1->getName().'</li>';
}
else {
echo '<li><a href="'.$lev1->getUrl().'">'.$lev1->getName().'</a></li>';
}
endif;
endforeach;
echo '</ul>';
/*
$navigation = OOTemplate::getNavigation();
print $navigation;
*/
?>
</div>
Hallo, ich kann mich splaesch nur anschliessen, Redaxo macht Spass. Ich hätte ich auch eine Frage. Mein Menü ist etwas anders aufgebaut, es zeigt 2 Ebenen an, die 2. aber nur wenn die erste angeklickt wurde.
Nun hätte ich gerne, dass der Over Effekt für den geöffneten Menüpunkte bleibt. Bewegt man sich in der 2. Ebene müssten also 2 Menüpunkte mit dem Over Effekt belegt sein. Anhand des hier angeführten Beispiels ist es mit leider bislang nicht gelungen.
So sieht mein Code bislang aus:
Bin für jeden Tipp dankbar.
LG
Michael
Nun hätte ich gerne, dass der Over Effekt für den geöffneten Menüpunkte bleibt. Bewegt man sich in der 2. Ebene müssten also 2 Menüpunkte mit dem Over Effekt belegt sein. Anhand des hier angeführten Beispiels ist es mit leider bislang nicht gelungen.
So sieht mein Code bislang aus:
Code: Alles auswählen
<?php
$path = explode( '|', $this->getValue("path").$this->getValue("article_id"));
$path1 = $path[1];
$path2 = $path[2];
$path3 = $path[3];
echo '<ul class="navigation">';
foreach (OOCategory::getRootCategories() as $lev1):
if($lev1->isOnline()):
echo '<li><a href="'.$lev1->getUrl().'">'.$lev1->getName().'</a>';
if ($lev1->getId() == $path1) :
$lev1Size = sizeof($lev1->getChildren());
if($lev1Size != "0"):
echo '<ul>';
foreach ($lev1->getChildren() as $lev2):
if ($lev2->isOnline()):
echo '<li><a href="'.$lev2->getUrl().'">'.$lev2->getName().'</a></li>';
endif;
endforeach;
echo '</ul>';
endif;
endif;
echo '</li>';
endif;
endforeach;
echo '</ul>';
/*
$navigation = OOTemplate::getNavigation();
print $navigation;
*/
?>
LG
Michael
- Thomas.Blum
- Entwickler
- Beiträge: 5063
- Registriert: 24. Aug 2004, 22:11
- Wohnort: Dresden
- Kontaktdaten: Website
Hej,
funktioniert so:
Jetzt im CSS die Klasse current deinen Aktiven Status vergeben
Thomas
funktioniert so:
Code: Alles auswählen
foreach (OOCategory::getRootCategories() as $lev1):
if($lev1->isOnline()):
if ($lev1->getId() == $path1) :
echo '<li><a class="current" href="'.$lev1->getUrl().'">'.$lev1->getName().'</a>';
$lev1Size = sizeof($lev1->getChildren());
if($lev1Size != "0"):
echo '<ul>';
foreach ($lev1->getChildren() as $lev2):
if ($lev2->isOnline()):
echo '<li><a href="'.$lev2->getUrl().'">'.$lev2->getName().'</a></li>';
endif;
endforeach;
echo '</ul>';
endif;
echo '</li>';
else:
echo '<li><a href="'.$lev1->getUrl().'">'.$lev1->getName().'</a>';
endif;
endif;
endforeach;
Thomas
-
- Beiträge: 5
- Registriert: 26. Okt 2005, 20:48
-
- Beiträge: 5
- Registriert: 26. Okt 2005, 20:48
- Thomas.Blum
- Entwickler
- Beiträge: 5063
- Registriert: 24. Aug 2004, 22:11
- Wohnort: Dresden
- Kontaktdaten: Website
Hej,
die Schleife ersetzen mit:
Gruss Thomas
die Schleife ersetzen mit:
Code: Alles auswählen
foreach (OOCategory::getRootCategories() as $lev1):
if($lev1->isOnline()):
if ($lev1->getId() == $path1) :
echo '<li><a class="current" href="'.$lev1->getUrl().'">'.$lev1->getName().'</a>';
$lev1Size = sizeof($lev1->getChildren());
if($lev1Size != "0"):
echo '<ul>';
foreach ($lev1->getChildren() as $lev2):
if ($lev2->isOnline()):
if ($lev2->getId() == $path2) :
echo '<li><a class="current" href="'.$lev2->getUrl().'">'.$lev2->getName().'</a></li>';
else:
echo '<li><a href="'.$lev2->getUrl().'">'.$lev2->getName().'</a></li>';
endif;
endif;
endforeach;
echo '</ul>';
endif;
echo '</li>';
else:
echo '<li><a href="'.$lev1->getUrl().'">'.$lev1->getName().'</a>';
endif;
endif;
endforeach;
-
- Beiträge: 5
- Registriert: 26. Okt 2005, 20:48
- Thomas.Blum
- Entwickler
- Beiträge: 5063
- Registriert: 24. Aug 2004, 22:11
- Wohnort: Dresden
- Kontaktdaten: Website
-
- Beiträge: 5
- Registriert: 26. Okt 2005, 20:48
- Markus.Staab
- Entwickler
- Beiträge: 9634
- Registriert: 29. Jan 2005, 15:50
- Wohnort: Aschaffenburg/Germany
- Kontaktdaten: ICQ Website
- Thomas.Blum
- Entwickler
- Beiträge: 5063
- Registriert: 24. Aug 2004, 22:11
- Wohnort: Dresden
- Kontaktdaten: Website