Seite 1 von 1
3 Sprachen -> Hilfsnavigation
Verfasst: Mo 13. Okt 2003, 07:43
von chrigionline
Hallo zusammen,
Ich habe ein 3 sprachiges CMS. Über Fähnchen kann ich auf der Homepage auf die 3 verschiedenen sprachigen Startseiten gelangen. Dies funktioniert ohne Probleme. Selbst die Namen der Hilfsnavigationstitel werden geändert. Also z.B. Konktakt in Contact...
Doch wenn ich auf einen dieser Hilfsnavigationstitel klicke bekomme ich den Artikel immer in der Sprache 1.
Hat jemand ein Lösungsvorschlag?
Vielen dank für eure Bemühungen!
Christian Bachmann
Verfasst: Mo 13. Okt 2003, 09:13
von emergence
wie sieht die url aus, die nach sprachumstellung erzeugt wurde ?
ich habs zwar noch nicht mit anderen sprachen versucht aber ich verwende folgende konstruktion für meine links:
zB:
$link = "front_content.php?idcat=".$db->f("idcat")."&client=".$client."&lang=".$lang."";
als link müsste das ganze dann nach sprachumstellung etwa so aussehen:
front_content.php?idcat=23&client=1&lang=2
Verfasst: Mo 13. Okt 2003, 10:40
von chrigionline
Danke für deine rasche Antwort.
Der URL ist ja schon das komische. Ich erwartete wie du auch etwas in der Art von
jedoch ist der URL
.
Gruss Christian
Verfasst: Mo 13. Okt 2003, 10:44
von emergence
wie sieht dein code im outputbereich aus der den link erzeugt ?
Verfasst: Di 14. Okt 2003, 08:14
von chrigionline
Code: Alles auswählen
<?
include_once($cfg["path"]["contenido"].$cfg["path"]["includes"]."functions.con.php");
$catStart = "CMS_VALUE[0]";
if ($catStart != "") {
$catIds = conDeeperCategoriesArray($catStart);
echo '<table cellpadding="0" cellspacing="0" border="0"><tr>';
if ( is_array($catIds) ) {
foreach($catIds as $key=>$val) {
// Ersten Eintrag ueberspringen, weil das der Menupunkt selbst ist
// und nicht angezeigt werden soll.
if ($key != 0) {
$sql = "SELECT CAT.idcat AS idcat, name FROM ".
$cfg["tab"]["cat"]." AS CAT, ".
$cfg["tab"]["cat_lang"]." AS CATLANG".
" WHERE CAT.idcat = ".$val.
" AND CAT.idcat = CATLANG.idcat".
" AND CATLANG.idlang = $lang"; $db->query($sql);
while ( $db->next_record() ) {
echo '<td height="21" class=".navigation" style="border: 0px; border-top:1px; background-image:url(layoutbilder/balkenklein.gif); padding-left:7px; padding-right:7px;">
<a class="klein" href="front_content.php?idcat='.$db->f("idcat").'">'.$db->f("name").'</a></td>';
} // end while
} // if
} // end foreach
} // end if (is_array)
echo '</tr></table>';
Kleiner Hinweis:
Ich habe aus dem Orginal die SQL-Abfrage des Moduls mit Hilfe eines Forumbeitrags abgeändert. Da sonst die Einträge 3 fach dargestellt werden. Wegen den 3 Sprachen
Verfasst: Di 14. Okt 2003, 08:21
von emergence
ersetz mal
Code: Alles auswählen
<a class="klein" href="front_content.php?idcat='.$db->f("idcat").'">'.$db->f("name").'</a>
durch
Code: Alles auswählen
<a class="klein" href="front_content.php?idcat='.$db->f("idcat").'&client='.$client.'&lang='.$lang.'">'.$db->f("name").'</a>
und gibt mir mal die url damit ich mir das dann online ansehen kann.
Verfasst: Di 14. Okt 2003, 08:47
von chrigionline
Ja, super! Das war es! Es läuft! Das gibts doch gar nicht! Danke viel mals! Du hast mich gerettet!

Auf diese Lösung wäre ich nie gestossen. Ich habe immer an der SQL-Abfrage rumstudiert.
Leider ist die Seite noch nicht online sie läuft erst auf dem internen Netzwerk. Aber wenn es so weiter geht, dann wird sie schon bald (ca. in 3 Wochen) unter
http://www.steiger.ch sichtbar sein.
Als trost habe ich dir hinter meine Homepage eine Foto gelegt:
http://www.chrigionline.ch/steiger.gif
Nochmals vielen Dank!
Gruss Christian Bachmann