@Dr KillerJoe und TomHH
Danke für die Hinweise. Den Rat mit dem Wiki werde ich mir hinter die Ohren schreiben
Leider bin ich noch zu unerfahren, Euren Rat umzusetzen.
Mein erster Gedanke war jetzt die Funktion Sitemapliste umzubenennen. Der Erfolg war, dass ich den gleichen Fehlerhinweis mit dem neuen Namen bekommen habe.
Also habe ich versucht in das Modul sitemap den genannten Code einzubauen. Dazu bin ich aber noch zu unerfahren! wo muss das dann rein? Die kritische Funktion heißt jetzt Sitemap1
Oder noch besser: Wie kann man den Code besser hinbekommen damit der Fehler nicht auftritt (Rat aus dem Wiki)? Dann könnte man die Module im Download verbessern!
Code: Alles auswählen
<?PHP
function sitemap1(&$openul,$lev,$PathIndex) // UnterKategorie nur anzeigen wenn der aktuelle Eintrag auch aktiv ist
{
$time = time();
if(
$lev->isOnline() // Categorie online
&& ($lev->getValue("online_from") <= $time)
&& ($lev->getValue("online_to") >= $time) // und im Anzeigezeitraum
)
{
if($openul == 0) // ul Liste muss noch eroeffnet werden
{
print '<ul class="sitemaplevel'.$PathIndex.'">';
$openul = 1;
}
print '<li><a class="level'.$PathIndex.'" href="'.$lev->getUrl().'">'.$lev->getName().'</a>';
// jetzt die Untereintraege
$levSize = sizeof($lev->getChildren());
if($levSize != 0) // es gibt Kinder
{
$opensubul = 0;
foreach($lev->getChildren() as $sublevel) // Subebene anzeigen
{
sitemap1($opensubul,$sublevel,$PathIndex + 1);
}
if($opensubul == 1)
echo "</ul>";
}
echo "</li>\n";
}
}
function sitemap2(&$openul,$lev,$PathIndex) // UnterKategorie immer anzeigen wenn online
{
$time = time();
$closetag = 0;
if(
$lev->isOnline() // Categorie online
&& ($lev->getValue("online_from") <= $time)
&& ($lev->getValue("online_to") >= $time) // und im Anzeigezeitraum
)
{
if($openul == 0) // ul Liste muss noch eroeffnet werden
{
print '<ul class="sitemaplevel'.$PathIndex.'">';
$openul = 1;
}
print '<li><a class="level'.$PathIndex.'" href="'.$lev->getUrl().'">'.$lev->getName().'</a>';
$closetag = 1;
}
// Unterkategorie immer bearbeiten
$levSize = sizeof($lev->getChildren());
if($levSize != 0) // es gibt Kinder
{
$opensubul = 0;
foreach($lev->getChildren() as $sublevel) // Subebene anzeigen
{
sitemap2($opensubul,$sublevel,$PathIndex + 1);
}
if($opensubul == 1)
echo "</ul>";
}
if($closetag)
echo "</li>\n";
}
$openul = 0;
foreach (OOCategory::getRootCategories() as $lev1)
{
sitemap1($openul,$lev1,1);
}
if($openul == 1)
echo "</ul>\n";
?>
Danke für die Anfängerhilfe
Gruß Kalle