Hallo, lieber Forumbenutzer. 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 Möglichkeiten der Kommunikation ist das Forum ein wenig eingeschlafen und weniger Nutzer benutzen das Forum aktiv (trotzdem lohnt es sich evtl. hier nach Lösungen zu suchen oder seine Frage zu stellen).

Wir empfehlen, für deine Fragen/Probleme aktuell (zusätzlich) 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: http://redaxo.org/slack/
JonasLoerken
Beiträge: 70
Registriert: 13. Feb 2015, 23:22

getChildren enthält keinen Wert

6. Apr 2016, 15:11

Hey,
ich habe eine kleine Navigation für ein Projekt gebaut, leider scheint diese aber nicht korrekt zu funktionieren.

Code: Alles auswählen

<?php

$PATH = explode("|",$this->getValue("path").$this->getValue("article_id")."|");

echo '<ul class="right">';
foreach (OOCategory::getRootCategories(true) as $lev1)
{
if($lev1->getId() == $PATH[1] && $lev1->getChildren()>0)
echo '<li class="active has-dropdown border-top"><a href="'.$lev1->getUrl().'"><span>'.$lev1->getName().'</span></a>';
elseif($lev1->getChildren()>0)
echo '<li class="has-dropdown border-top"><a href="'.$lev1->getUrl().'"><span>'.$lev1->getName().'</span></a>';
else
echo '<li class="border-top"><a href="'.$lev1->getUrl().'"><span>'.$lev1->getName().'</span></a>';

if(count($lev1->getChildren())>0)
{
echo '<ul class="dropdown">';
foreach ($lev1->getChildren(true) as $lev2)
{
if($lev2->getId() == $PATH[1])
echo '<li class="active"><a href="'.$lev2->getUrl().'">'.$lev2->getName().'</a>';
else
echo '<li><a href="'.$lev2->getUrl().'">'.$lev2->getName().'</a>';
}
echo '</ul>';
} 
echo '</li>';
}
echo '<li class="pro-sec hide-for-small-only"><a href="'.rex_getUrl(29).'">Händler-Login</a></li>';

?>
Jeder Menüpunkt, welcher Unterpunkte besitzt, soll die Klasse "has-dropdown" erhalten. Leider bekommt jeder Menüpunkt diese Klasse zugewiesen, völlig egal, ob dieser wirklich Unterpunkte besitzt oder nicht.

Wenn ich mir $lev1->getChildren() auswerfen lassen, bekomme ich leider nur ein "Array", aber keine Zahl. Daher wird die Abfrage nicht funktionieren, denke ich mal. Wo liegt der Fehler? Hat es vielleicht etwas mit meiner Seitenstruktur zu tun?

Jeder Menüpunkt ist eine eigene Kategorie und in dieser Kategorie, liegen weitere Kategorien, sofern Unterpunkte vorhanden sind.

Danke für eure Hilfe :)

Benutzeravatar
Thomas.Blum
Entwickler
Beiträge: 5063
Registriert: 24. Aug 2004, 22:11
Wohnort: Dresden
Kontaktdaten: Website

Re: getChildren enthält keinen Wert

6. Apr 2016, 15:35

Hej,

suche

Code: Alles auswählen

elseif($lev1->getChildren()>0)
ersetze

Code: Alles auswählen

elseif(count($lev1->getChildren()))
vg Thomas

JonasLoerken
Beiträge: 70
Registriert: 13. Feb 2015, 23:22

Re: getChildren enthält keinen Wert

6. Apr 2016, 15:38

Dankeschön, klappt wunderbar! :)

Zurück zu „Allgemeines [R4]“