Kategorien für Anzeige in Sitemap sperren

Gesperrt
TiBo
Beiträge: 10
Registriert: Fr 3. Dez 2004, 14:57
Kontaktdaten:

Kategorien für Anzeige in Sitemap sperren

Beitrag von TiBo »

Hallo liebe Community,
kann ich in der Sitemap für V 4.4 bestimmte (Haupt)Kategorien, die im Frontend nur mit Passwort und Usernamen aufgerufen werden können in meiner Sitemap komplett ausblenden?

Gruß
TiBo
emergence
Beiträge: 10653
Registriert: Mo 28. Jul 2003, 12:49
Wohnort: Austria
Kontaktdaten:

Beitrag von emergence »

welche sitemap verwendest du genau ? (bitte den link auf das modul mit anführen)
*** make your own tools (wishlist :: thx)
TiBo
Beiträge: 10
Registriert: Fr 3. Dez 2004, 14:57
Kontaktdaten:

Beitrag von TiBo »

Also, hier der Code den ich für das Modul verwende (ist meines Wissens sogar unverändert der, der im Downloadbereich angeboten wird):

Input:

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";
Output:

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("#aaaaff", "#bbbbff","#ccccff","#ddddff");
  
  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 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);
?>


Wäre super wenn ihr mir helfen könnt.

Gruß
Tim
Gesperrt