Seite 2 von 2

Verfasst: Fr 19. Aug 2005, 18:11
von s.geiling
hallo,

irgendwie bekomme ich das modul nicht zum laufen! möchte gerne die 1. naviebene vertikal und die 2 naviebene horizontal...

...aber irgendwie stehe ich hier gerade auf dem schlauch!!! wäre super nett wenn mir mal jemand helfen könnte.

vielen dank
mfg stefan

Verfasst: Fr 19. Aug 2005, 20:30
von yodatortenboxer
Hi,

was genau bekommst du nicht zum laufen?
Die Position und die Art (horizontal/vertikal) wird komplett über CSS erstellt.

Gruß yodatortenboxer

Verfasst: Sa 20. Aug 2005, 12:42
von s.geiling
hi,

welches modul von den 3 oben muss ich den erstmal dafür nehmen? lege ich dann nur ein modul an oder 2 (da ja eigentlich auch 2 verschiebene navigation) module??

vielen dank für die hilfe

mfg stefan

Verfasst: Sa 20. Aug 2005, 13:10
von i-fekt
Welche Version benutzt du? Ich empfehle dir das Modul "[4.4.x] Navigation, 4 Ebenen, korrektes HTML".

Verfasst: Sa 20. Aug 2005, 13:44
von s.geiling
ich benutze die 4.5.x!!!

ich möchte halt die hauptnavi horizontal und die 2 ebene vertikal!!

mfg stefan

Verfasst: Sa 20. Aug 2005, 14:27
von i-fekt
Kann mir nicht vorstellen wie das optisch aussehen soll?

Verfasst: Sa 20. Aug 2005, 15:39
von s.geiling
ähhm so...

Bild

mfg stefan

Verfasst: Sa 20. Aug 2005, 16:48
von i-fekt
Einfach zwei Navimodule benutzen. Einfacher gehts nicht.

Verfasst: Sa 20. Aug 2005, 20:31
von yodatortenboxer
Du kannst auch das Modul von mir CSS_2Listen nehmen.
http://www.xtended-cooperation.de/cms/u ... 2_list.txt

Da brauchst du nur der Outputteil vom Original-Navimodul mit dem folgenden austauschen ohne mehrere Navimodule nutzen zu müssen.

Durch diese Modifikation wird die erste Ebene in einer Liste und die zweite und dritte Ebene in einer anderen, unabhängig von der ersten Liste, als zweite Liste dargestellt. Dadurch kann man die erste Navigationsebene z.B. horizontal und die zweite und folgende Vertikal darstellen.

Beispiel: http://www.abstrakt-media.de/

Wenn ich dir dabei helfen soll kannst du mir auch eine PM schicken.

gruß yodatortenboxer

Kategorien werden verschluckt

Verfasst: Do 8. Sep 2005, 16:23
von djw
Servus,
bei mir werden die Kategorien "verschluckt"

Hier fehlt die Kategorie Events.
Wenn ich in der Kategorie Events ein Artikel hinzufüge gehts nicht mehr - wenn ich ihn wieder weg mache gehts wieder (Selbes Template wie anderen Artikel)
Kein Eintrag in Error Log
http://www.eventbasar.de/cms_DJW/djwser ... p?idcat=23

falscher Output in 4.6.2

Verfasst: Mi 2. Nov 2005, 22:36
von #ayshe
Hallo,

ich habe versucht, das 2-Listen Modul in die 4.6.2 zu integrieren. Jetzt habe ich allerdings Seltsames im Output:

Die Links zu den Startartikeln werden falsch ausgegeben, z.B. hat die Startseite im Hauptnavi-Bereich A laut Backend die idcat 76 und den idart 93. Der Output des Hauptnavi-Moduls (1. Ebene) gibt aber nur idcat 76 aus. Mit diesem Link lande ich immer wieder auf der front_content.php, statt auf dem Startartikel.

Der Output-Code, den ich benutze, ist leicht abgewandelt, aber synktatisch OK. Ich habe nur die span-Tags entfernt und noch etwas am HTML geändert, alles "technische" ist unverändert.

Code: Alles auswählen

<?php
// Hauptnav
/***********************************************
* CONTENIDO MODUL - OUTPUT
*
* Modulname : Navigation 121
* Author : Jan Lengowski
* Copyright : Contenido - four for business
* Created : 15-05-2003
* Modified : 26-05-2003
*
* CSS-Modified http://www.xtended-cooperation.de
* ausgabe als Liste
*              Ralf Fleischer
*
************************************************/

if ( !is_object($db2) ) {
    $db2 = new DB_Contenido;
}

/**
 * Check if a category is child
 * of another category
 *
 * @return boolean true/false
 * @author Jan Lengowski <Jan.Lengowski@4fb.de>
 * @copyright four for business AG 2003
 */
function catIsChildOf($id, $idparent) {

    global $cfg, $client, $lang;

    $db = new DB_Contenido;

    $parent = $id;

    while ( $parent != 0 ) {

        $sql = "SELECT
                    a.parentid
                FROM
                    ".$cfg["tab"]["cat"]." AS a,
                    ".$cfg["tab"]["cat_lang"]." AS b
                WHERE
                    a.idclient  = '".$client."' AND
                    b.idlang    = '".$lang."' AND
                    a.idcat     = b.idcat AND
                    a.idcat   = '".$parent."'";

        $db->query($sql);
        $db->next_record();

        $parent = $db->f("parentid");

        if ($parent == $idparent) {
            return true;
        }

    }

    return false;

}

if ( catIsChildOf($idcat, "CMS_VALUE[0]") ) {
    $sel_idcat = $idcat;
} else {
    $sel_idcat = "CMS_VALUE[0]";
}

/* Include Template Class */
include_once($cfg["path"]["contenido"] . 'classes/class.template.php');

/**
 * Array storing alle the
 * navigation data
 */
$navitems = array();


/* Template Instance */
$tpl = new Template;

/**
 * Recursive function for creating
 * the navigation array
 * @param Int $idcat Category id
 */
function nav($idcat) {

        global $navitems, $client, $lang, $cfg;

        $db  = new DB_Contenido;
        $db2 = new DB_Contenido;

        $sql = "SELECT parentid FROM ".$cfg["tab"]["cat"]." WHERE idcat = '$idcat'";

        $db->query($sql);
        $db->next_record();

        $parentid = $db->f("parentid");

        if ( $parentid == 0 ) {

           if ( $idcat != "CMS_VALUE[0]" ){

                $navitems = array();

                $sql = "SELECT
                            A.idcat,
                            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
                            B.idclient  = '$client' AND
                            C.idlang    = '$lang'   AND
                            C.visible   = '1'       AND
                            B.parentid  = 'CMS_VALUE[0]'
                        ORDER
                            BY A.idtree";

                      $db->query($sql);

                      while ($db->next_record()) {

                            /* Check for external redirects... */
                            $sql = "SELECT
                                        a.external_redirect AS ext,
                                        a.idartlang AS idartlang
                                    FROM
                                        ".$cfg["tab"]["art_lang"]." AS a,
                                        ".$cfg["tab"]["cat_art"]." AS b,
                                        ".$cfg["tab"]["cat"]." AS c
                                    WHERE
                                        b.idcat     = '".$db->f("idcat")."' AND
                                        c.idclient  = '".$client."' AND
                                        c.idcat     = b.idcat AND
                                        a.idart     = b.idart AND
                                        a.idlang    = '".$lang."'";

                            $db2->query($sql);
                            $db2->next_record();
                            if (isStartArticle($db2->f("idartlang"), $db->f("idcat"), $lang))
                            {
                                $target = ( $db2->f("ext") == 0 ) ? '_self' : '_blank';

                                $navitems[$db->f("idcat")] = array("idcat"      => $db->f("idcat"),
                                                                    "name"      => $db->f("name"),
                                                                    "target"    => $target);
                            }
                      }

           }

           return true;
        }

        $sql = "SELECT
                    A.idcat,
                    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
                    B.idclient  = '$client' AND
                    C.idlang    = '$lang'   AND
                    C.visible   = '1'       AND
                    B.parentid  = '$parentid'
                ORDER BY
                    A.idtree";

        $db->query($sql);

        while ($db->next_record()) {

                /* Check for external redirects... */
                $sql = "SELECT
                            a.external_redirect AS ext,
                            a.idartlang AS idartlang
                        FROM
                            ".$cfg["tab"]["art_lang"]." AS a,
                            ".$cfg["tab"]["cat_art"]." AS b,
                            ".$cfg["tab"]["cat"]." AS c
                        WHERE
                            b.idcat     = '".$db->f("idcat")."' AND
                            c.idclient  = '".$client."' AND
                            c.idcat     = b.idcat AND
                            a.idart     = b.idart AND
                            a.idlang    = '".$lang."'";

                $db2->query($sql);
                $db2->next_record();
                if (isStartArticle($db2->f("idartlang"), $db->f("idcat"), $lang))
                {
                    $target = ( $db2->f("ext") == 0 ) ? '_self' : '_blank';

                    $tmp_nav[$db->f("idcat")] = array("idcat"   => $db->f("idcat"),
                                                      "name"    => $db->f("name"),
                                                      "target"  => $target);
                }
        }

        $tmp_nav[$idcat]["sub"] = $navitems;
        $navitems = $tmp_nav;

        /* Function call */
        nav($parentid);

}  // end function

$sql = "SELECT
            A.idcat,
            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
            B.idclient  = '$client' AND
            C.idlang    = '$lang'   AND
            C.visible   = '1'       AND
            B.parentid  = '$sel_idcat'
        ORDER BY
            A.idtree";

$db->query($sql);

while ( $db->next_record() ) {

        /* Check for external redirects... */
        $sql = "SELECT
                    a.external_redirect AS ext,
                    a.idartlang AS idartlang
                FROM
                    ".$cfg["tab"]["art_lang"]." AS a,
                    ".$cfg["tab"]["cat_art"]." AS b,
                    ".$cfg["tab"]["cat"]." AS c
                WHERE
                    b.idcat     = '".$db->f("idcat")."' AND
                    c.idclient  = '".$client."' AND
                    c.idcat     = b.idcat AND
                    a.idart     = b.idart AND
                    a.idlang    = '".$lang."'";

        $db2->query($sql);
        $db2->next_record();
        if (isStartArticle($db2->f("idartlang"), $db->f("idcat"), $lang))
        {
            $target = ( $db2->f("ext") == 0 ) ? '_self' : '_blank';

            $navitems[$db->f("idcat")] = array("idcat"  => $db->f("idcat"),
                                               "name"   => $db->f("name"),
                                               "target" => $target);
        }
}

/* Create Navigation Array */
nav($sel_idcat);

/* Start Output buffer */
ob_start();

echo "\n<ul>\n";


foreach ($navitems as $key => $data) {


        /* 1. Navigations Ebene */
        echo "\t<li>";
        $href=$sess->url('index.php?idcat='.$data['idcat']);
        if ($idcat == $data['idcat'] || is_array($data['sub'])) {
        echo "<a class=\"navfirst_off\" target=\"".$data['target']."\" href=\"$href\">".$data['name']."</a>";
        } else {
        echo "<a class=\"navfirst_on\" target=\"".$data['target']."\" href=\"$href\">".$data['name']."</a>";
        }
        echo "</li>\n";
        if (is_array($data['sub'])) {
        $tmp_data = array();
        $tmp_data = $data;
        }
} // end foreach
echo "</ul>\n";


if (is_array($tmp_data['sub'])) {
    echo "\n<div id=\"subnav\"><ul>\n";
    $data = $tmp_data;
    foreach ($data['sub'] as $key => $data) {

        /* 2. Navigations Ebene */
        echo "\t<li>";
        $href=$sess->url('index.php?idcat='.$data['idcat']);
        if ($idcat == $data['idcat'] || is_array($data['sub']))
        {
        echo "<a class=\"second_off\" target=\"".$data['target']."\" href=\"$href\">".$data['name']."</a>";
        } else {
        echo "<a class=\"second_on\" target=\"".$data['target']."\" href=\"$href\">".$data['name']."</a>";
        }
        echo "</li>\n";
                if (is_array($data['sub'])) {

                        foreach ($data['sub'] as $key => $data) {

                        /* 3. Navigations Ebene */
                        echo "\t<li>";
                        $href=$sess->url('index.php?idcat='.$data['idcat']);
                        if ($idcat == $data['idcat']) {
                        echo "<a class=\"third_off\" target=\"".$data['target']."\" href=\"$href\">".$data['name']."</a>";
                        } else {
                        echo "<a class=\"third_on\" target=\"".$data['target']."\" href=\"$href\">".$data['name']."</a>";
                        }
                        echo "</li>\n";
                        } // end foreach
                } // end if
    } // end foreach
    echo "</ul>\n";
} // end if


/* Read out buffer */
$html = ob_get_contents();

/* Clean buffer */
ob_end_clean();

/* Output buffer-contents */
echo $html;

?>

Wäre klasse, wenn mir jemand helfen könnte, ich brauche ganz dringend eine geteilte Hauptnavi für die 4.6.2

Viele Grüße,
Ayshe

Re: falscher Output in 4.6.2

Verfasst: Mi 2. Nov 2005, 22:49
von Halchteranerin
Hallo ayshe,

ich habe nicht den kompletten Thread verfolgt, aber ...
#ayshe hat geschrieben: Die Links zu den Startartikeln werden falsch ausgegeben
... mit der Umstellung des Startartikels von 4.4. auf 4.5 bzw. 4.6 hat das nicht zufaellig zu tun?

Gruss
Christa

Verfasst: Do 3. Nov 2005, 15:12
von #ayshe
Hallo Christa,

Dein Einwand ist berechtigt, aber ich bin mir nicht sicher, OB es das ist.

Aber ist im Prinzip auch egal. Wichtig ist vor allem, dass ich eine geteilte Hauptnavi brauche, die unter 4.6.x läuft :-)

Viele Grüße,
Ayshe

Verfasst: Do 3. Nov 2005, 18:21
von Halchteranerin
Hallo ayshe,

war nur eine Idee, kein Einwand. :wink: Aber falls es damit zu tun hat, solltest du mal nach "Startartikel" suchen, denn irgendwo stand, was man wo einstellen muss, dass diese Startartikelkompatibilitaet besteht, und wenn das daran liegen sollte, dann brauchst du das nur umzustellen, damit die Navi geht.

Gruss
Christa

Verfasst: Do 3. Nov 2005, 19:30
von #ayshe
Hallo Christa,

das hast Du nur z.T. richtig in Erinnerung. Es ist zwar so, dass es eine Funktion für den Startartikel gibt, die man umstellen kann. Aber es hat sich leider auch gezeigt, dass das Umstellen nichts änderte. Tja, ich schau mal weiter :-)