Sitemap - Probleme bei Mehrsprachigkeit

Gesperrt
marphin
Beiträge: 196
Registriert: Mo 24. Nov 2003, 13:01

Sitemap - Probleme bei Mehrsprachigkeit

Beitrag von marphin »

Hallo,

kann mir vielleicht jemand helfen? - Ich habe das Sitemap-Modul eingebaut und es funktionierte bis ich die zweite Sprache integriert habe. Nun wird in keiner Sprache eine Seite angezeigt: http://www.campingplatz-hetzingen.de/cm ... hp?idcat=8

Hier der Code:

Input:

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";
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("#f89f2b", "#f89f2b","#f89f2b","#f89f2b");
  
  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=2 cellpadding=1 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='180px' bgcolor='".$color[$colorID].
                  "' valign=top class='navi'><a href='content.php?idcat=".$db->f("idcat").
                  "&changelang=$lang&client=$client' class='navi'>".
                  $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);
?>
Danke schonmal und viele Grüße, Martin
emergence
Beiträge: 10653
Registriert: Mo 28. Jul 2003, 12:49
Wohnort: Austria
Kontaktdaten:

Beitrag von emergence »

also ich sehe die sitemap bei dir

deutsch und französisch
*** make your own tools (wishlist :: thx)
marphin
Beiträge: 196
Registriert: Mo 24. Nov 2003, 13:01

Beitrag von marphin »

Ja, ich auch. Aber klick mal irgend einen Link darin an. Die Seite kann nicht geöffnet werden.
emergence
Beiträge: 10653
Registriert: Mo 28. Jul 2003, 12:49
Wohnort: Austria
Kontaktdaten:

Beitrag von emergence »

in deinem output modul
-> 'content.php?
sollte eher
-> 'front_content.php?
heissen...
*** make your own tools (wishlist :: thx)
marphin
Beiträge: 196
Registriert: Mo 24. Nov 2003, 13:01

Beitrag von marphin »

Ich danke dir recht herzlich, das war aber schon Dummheit, das nicht selber zu merken.
Gesperrt