Sitemap für 4.4 - "Versteckte" Seiten ausblenden
Verfasst: So 11. Jan 2004, 18:56
hallo miteinander,
ich versuche gerade die Sitemap (für 4.4) einzubauen.
funktioniert auch alles, aber in der Ausgabeseite erscheint immer eine Spalte mit den Punkten "Hauptnavigation", Servicenavigation" und den Seiten, die gar nicht angezeigt werden sollen! Die sollen natürlich NICHT dargestellt werden!
Habe mich schon im Forum umgeschaut und die Lösungen ausprobiert.
Leider ohne Erfolg. Kann jemand helfen? Verzweifele langsam...
Hier das verwendete Modul:
ich versuche gerade die Sitemap (für 4.4) einzubauen.
funktioniert auch alles, aber in der Ausgabeseite erscheint immer eine Spalte mit den Punkten "Hauptnavigation", Servicenavigation" und den Seiten, die gar nicht angezeigt werden sollen! Die sollen natürlich NICHT dargestellt werden!
Habe mich schon im Forum umgeschaut und die Lösungen ausprobiert.
Leider ohne Erfolg. Kann jemand helfen? Verzweifele langsam...
Hier das verwendete Modul:
Code: Alles auswählen
/***********************************************
* CONTENIDO MODUL - INPUT
*
* Modulname : Sitemap
* Author(s) : Jan Lengowski, Jose Rodriguez
* Copyright : Contenido - four for business, Jose Rodriguez
* Created : 15-08-2002
* Modified : 14-01-2003 by nik wyss
* Modified : 29-12-2003 by Sascha Benkart.
* - Adapt to Contenido V4.4
************************************************/
// 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";
Code: Alles auswählen
<?php
/***********************************************
* CONTENIDO MODUL - OUTPUT
*
* Modulname : Sitemap
* Author(s) : Nik Wyss
* Copyright : None
* Created : 14-01-2003
* Modified : 14-01-2003
* Modified : 29-12-2003 by Sascha Benkart.
* - Adapt to Contenido V4.4
* - Output only shows visible items
************************************************/
$amountLevel = "CMS_VALUE[1]";
$newcat = "CMS_VALUE[0]";
$color = array("#e8e8e8", "#e8e8e8","#e8e8e8","#e8e8e8");
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='120px' 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 * FROM $cfgTab_cat_tree AS A, $cfgTab_cat AS B, $cfgTab_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 C.visible=1 ORDER by A.idtree";
$db->query($sql);
$db->next_record();
$startLevel = $db->f("level");
$amountLevel += $startLevel;
if ($newcat==0){$amountLevel--;}
echo sitemap($newcat);
?>