Subnavigation mehrspaltig

Gesperrt
icetogo
Beiträge: 4
Registriert: Mi 13. Aug 2008, 07:22
Kontaktdaten:

Subnavigation mehrspaltig

Beitrag von icetogo »

Ich nutze das DHTML Menü xtcSpryDHTMLNavi von xtended cooperation. Ist dies möglich die Subnavigation mehrspaltig zu gestalten. Etwa so wie im Anhang...?

Code: Alles auswählen

<?php
/***********************************************
* CONTENIDO MODUL - OUTPUT
*
* Modulname   :     DHTML Navi auf Spry1.6.1.-Basis
* Author(s)   :     Ralf Fleischer
* WWW-Adress  :     http://www.xtended-cooperation.de
* Mail        :     info@xtended-cooperation.de
* Created     :     12-05-2008
* Modified    :     21-05-2008, Ralf Fleischer
* ************************************************/

// include Contenido_FrontendNavigation class
cInclude('classes', 'Contenido_FrontendNavigation/Contenido_FrontendNavigation.class.php');
cInclude('classes', 'Contenido_FrontendNavigation/Contenido_FrontendNavigation_Breadcrumb.class.php');


$hauptkategorie = getEffectiveSetting('navigation', 'idcat-dhtml', 1);
$MaxLevel = getEffectiveSetting('navigation', 'idcat-dhtml-maxlevel', 10);



//$hauptkategorie = "CMS_VALUE[0]";

$navitems = array();

function nav_feld ($cat,$Level) {
global $client, $lang, $cfg, $idcat;

        if (!is_object($db)) {
            $db = new DB_Contenido;
        }
        $sql = "SELECT
                     A.idcat,
                     A.level,
                     B.parentid,
                     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
                     A.level     <=  $Level  AND             
                     B.parentid  = '$cat'
                  ORDER BY
                     A.idtree";

         $db->query($sql);
         while ( $db->next_record() ) {
            
            $aktiv = "";
            $sub_feld = nav_feld($db->f("idcat"),$Level);
            if ($db->f("idcat") == $idcat) $aktiv = "active";
            elseif ($sub_feld["activepath"]) $aktiv = "activepath";
            $nav_feld[] = array("idcat"      => $db->f("idcat"),
                                "name"       => $db->f("name"),
                                "active"     => $aktiv,
                                "sub"        => $sub_feld);
            if ($aktiv != "") $activepath = $aktiv;
         }
         $rv = array("feld"          => $nav_feld,
                     "activepath"    => $activepath);
         return $rv;
}

function liste ($array, $indent = "  ") 
{
global $first,$Level,$LevelMax;

       if (is_array($array["feld"])) {
         if ($first) {
           echo $indent . "<ul id=\"MenuBar1\" class=\"MenuBarHorizontal\">\n";
           $first = 0;
         }
         else echo $indent . "<ul>\n";
         
         foreach ($array["feld"] as $menupunkt) 
         {
           if ($menupunkt["active"] == "active") echo $indent . $indent . "<li class=\"active\">\n";
           elseif ($menupunkt["active"] == "activepath") echo $indent . $indent . "<li class=\"activepath\">\n";
           else echo $indent . $indent . "<li class=\"passiv\">\n";
                     
                       if (is_array($menupunkt["sub"]["feld"])) 
                       {
                         echo $indent . $indent . $indent . "<a class=\"MenuBarItemSubmenu\" href=\"front_content.php?idcat=" . $menupunkt["idcat"] . "\">" . $menupunkt["name"] . "</a>\n";
                         liste($menupunkt["sub"], $indent."    ");
                       }
                       
           else echo $indent . $indent . $indent . "<a class=\"MenuBarItemSubmenu\" href=\"front_content.php?idcat=" . $menupunkt["idcat"] . "\">" . $menupunkt["name"] . "</a>\n";
           echo $indent . $indent . "</li>\n";
         }
         echo $indent . "</ul>\n";
       }
}

/* Create Navigation Array */

$navitems = nav_feld($hauptkategorie,$MaxLevel);  

$first = 1;

liste($navitems);
?>
Dateianhänge
1.jpg
(55.3 KiB) 885-mal heruntergeladen
Zuletzt geändert von Oldperl am Do 2. Dez 2010, 20:16, insgesamt 1-mal geändert.
Grund: Moderation: quote- durch code-BBCode ersetzt.
OliverL
Beiträge: 870
Registriert: Do 28. Jun 2007, 09:28
Kontaktdaten:

Re: Subnavigation mehrspaltig

Beitrag von OliverL »

Hi,

wo liegt genau das Problem?
Im Modul wird mit "... C.idlang = '$lang' AND ..." die Sprache abgefragt.
Somit sollte das doch funktionieren oder?

mfg OliverL
Spider IT
Beiträge: 1416
Registriert: Fr 3. Dez 2004, 10:15

Re: Subnavigation mehrspaltig

Beitrag von Spider IT »

Moin Oliver,

lies das nochmal, da steht mehrSPALTIG :)

Gruß
René
Oldperl
Beiträge: 4316
Registriert: Do 30. Jun 2005, 22:56
Wohnort: Eltmann, Unterfranken, Bayern
Hat sich bedankt: 6 Mal
Danksagung erhalten: 4 Mal
Kontaktdaten:

Re: Subnavigation mehrspaltig

Beitrag von Oldperl »

Hallo,
icetogo hat geschrieben:Ist dies möglich die Subnavigation mehrspaltig zu gestalten.
Ja das ist möglich.
  • DB-Abfrage entsprechend anpassen
  • HTML-Aufbau entsprechend anpassen
  • CSS entsprechend anpassen
Gruß aus Franken

Ortwin
ConLite 3.0.0-dev, alternatives und stabiles Update von Contenido 4.8.x unter PHP 8.x - Download und Repo auf Gitport.de
phpBO Search Advanced - das Suchwort-Plugin für CONTENIDO 4.9
Mein Entwickler-Blog
Gesperrt