Ich habe mir aus dem Forum folgende Sitemap installiert:
Eingabe
Code: Alles auswählen
// selected category
$selected = "CMS_VALUE[0]";
echo "<table cellspacing=\"0\" cellpadding=\"10\" border=\"0\">\n".
" <tr valign=\"top\">\n".
" <td>Kategorie wählen:</td>\n".
" <td>\n".
" <select name=\"CMS_VAR[0]\">\n".
" <option value='0'>---Alle---</option>\n";
// fetch all categorys
$query = "SELECT A.idcat, A.level, C.name FROM ".$cfg["tab"]["cat_tree"]." AS A, ".
$cfg["tab"]["cat"]." AS B, ".$cfg["tab"]["cat_lang"]." AS C WHERE A.idcat=B.idcat ".
"AND B.idcat=C.idcat AND C.idlang='$lang' AND B.idclient='$client' ".
"AND C.visible=1 ORDER BY A.idtree";
// execute query
$db->query($query);
// loop result and build the options
while ($db->next_record())
{
// indent spacer
$spaces = "";
// how many levels
$levels = $db->f("level");
for ($i = 0; $i > $levels; $i ++)
{
// add 2 spaces for every level
$spaces = $spaces . " ";
} // end for
if ($selected == $db->f("idcat"))
{
// selected category
echo " <option selected=\"selected\" value=\"".
$db->f("idcat") ."\">".
$spaces . $db->f("name") ."</option>";
}
else
{
// category
echo " <option value=\"".
$db->f("idcat") ."\">".
$spaces . $db->f("name") ."</option>";
} // end if
} // end while
echo " </select>\n".
" </td>\n".
" </tr>\n".
" <tr>\n".
" <td>Anzahl Ebene:</td>\n".
" <td>\n".
" <input type=\"text\" name=\"CMS_VAR[1]\" value=\"CMS_VALUE[1]\">\n".
" </td>\n".
" </tr>\n".
" </table>\n";
Ausgabe
Code: Alles auswählen
<?php
$amountLevel = "CMS_VALUE[1]";
$newcat = "CMS_VALUE[0]";
$color = array("#F7C473", "#FCC33","#f4a460","#daa520");
function sitemap($newcat=0)
{
global $lang, $client, $amountLevel, $color, $startLevel, $cfg;
$db = new DB_Contenido;
$sql = "SELECT * FROM ".$cfg["tab"]["cat_tree"]." AS A, ".
$cfg["tab"]["cat"]." AS B, ".
$cfg["tab"]["cat_lang"]." AS C ".
"WHERE A.idcat=B.idcat AND B.idcat=C.idcat AND ".
"C.idlang='$lang' AND B.idclient='$client' AND ".
"B.parentid =$newcat AND level <= $amountLevel AND C.visible=1 ".
"ORDER by A.idtree";
$db->query($sql);
$result = "<table border=0 cellspacing=1 cellpadding=0 border=0>";
while ($db->next_record())
{
$lvl = $db->f("level");
if ($lvl==1)
{
$result.="<tr><td> </td></tr>";
}
$colorID=$lvl-$startLevel;
if ($colorID > count($color)-1)
{
$colorID=count($color)-1;
}
$result .= "<tr><td width='140 px' bgcolor='".$color[$colorID].
"' valign=top><a href='front_content.php?idcat=".$db->f("idcat").
"&lang=$lang&client=$client' class='lmLink'>".
$db->f("name")."</a></td><td>".sitemap($db->f("idcat")).
"</td></tr>";
}
$result.= "</table>";
return($result);
}
$sql = "SELECT level FROM $cfgTab_cat_tree WHERE idcat=$newcat";
$db->query($sql);
$db->next_record();
$startLevel = $db->f("level");
$amountLevel += $startLevel;
if ($newcat==0){$amountLevel--;}
echo sitemap($newcat);
?>
Um die Sitemap in der Breite ein bisschen einzugrenzen, wollte ich die erste Ebene ausblenden (Hauptnavigation, Servicenavigation,...)
Kann mir jemand sagen wo ich im Code die Einstellung finde?