Seite 10 von 11

Re: Neues Modul: vpNavigation

Verfasst: Do 19. Aug 2010, 09:17
von Nakoda
Hi Ortwin,

danke für den Tipp. Werde ich beherzigen. :D
Dir noch einen schönen Tag.

Re: Neues Modul: vpNavigation

Verfasst: Mo 7. Feb 2011, 22:52
von McHubi
'Nabend allerseits!

Nutze exakt den Code aus dem ersten Post in einer 4.8.14, wobei der Output getauscht wurde durch den zur Berücksichtigung geschützter Kategorien: Beitragvon silicone » Fr Jun 16, 2006 11:09 am - unten auf der ersten Seite.

Wie zum Geier bekommt man es hin, dass die Navipunkte tatsächlich schön nacheinander aufgeblättert werden? Das ist insbesondere dann richtig dumm, wenn zwei direkt übereinander liegende Punkte aus der 3. Ebene mehrere Unterpunkte in der 4. haben. Die verdecken sich dann nämlich gegenseitig weil alle Punkte in der 4. gleichzeitig mit der 3. auf gehen. Das Prob wäre nicht da, wenn immer nur die Unterpunkte des gerade gehoverten Navipunkts aufgeblättert würden.

Hoffe, ich hab das einigermaßen vernünftig in Worte kleiden können...

Meine Tischkante ist dankbar für jede Hilfe... :?

Edit: wer die css-Klassen von der Pike selbst aufbaut ist klar im Vorteil... Hmpf... Prob gelöst...

Re: Neues Modul: vpNavigation

Verfasst: Sa 12. Feb 2011, 19:13
von Nakoda
HiHo Liebe Leutz,

sit neuestem funzt die NAvi nich mehr bei mir. zumindest nicht im IE8. Firefox ist kein Problem.
Was hab ich getan :?: Update auf 4.8.14 und die eCommerce Lösung von em² eingebaut.
Funzt nicht heißt es klappt nichts auf.
Jemand 'ne Idee oder weitere Fragen :?:
Immer raus damit. :)

http://web116.c2.webspace-verkauf.de/el ... ?idcat=174

Re: Neues Modul: vpNavigation

Verfasst: So 13. Feb 2011, 21:49
von evse
Hello!
Wie kann ich dieses Modul dahingehend verändern, dass mir jeweils die oberste Kategorie nicht ins resultierende Menue genereiert wird.

---Struktur der Seite---
Kat1
-- Sub 1
-- Sub 2
---- SubSub21
Kat2
--Sub4
--Sub5
----SubSub51


---Ausgabe sollte sein----
Sub1 - Sub2 - Sub 4 - Sub5
..........>Sub21........>SubSub51
etc...

Vielen DAnk!

Re: Neues Modul: vpNavigation

Verfasst: Di 26. Jul 2011, 16:18
von zatec
Hallo,

wunderschönes Modul.

Allerdings möchte ich, dass bei jedem Navigationspunkt automatisch ein Titelattribut angezeigt wird...

Kann mir jemand weiter helfen?

Danke im Voraus.

MfG

Re: Neues Modul: vpNavigation

Verfasst: Di 26. Jul 2011, 17:23
von BagHira
Servus zatec,

was ist ein "Titelattribut " :?:

Re: Neues Modul: vpNavigation

Verfasst: Di 26. Jul 2011, 18:02
von mfweb
BagHira hat geschrieben:was ist ein "Titelattribut " :?:
Wahrscheinlich meint er das title-Attribut, also den Tooltip-Text für Links:

Code: Alles auswählen

<a href="bla.htm" title="mich kannst du lesen, wenn du den Mauszeiger auf diesem Link parkst">blubb</a>
;-)

Re: Neues Modul: vpNavigation

Verfasst: Di 26. Jul 2011, 19:04
von BagHira
Dank dir :oops:

Du müsstest dann dein Output deines Moduls nach folgendem Muster bearbeiten:
Orginal ohne Titel-Tag:

Code: Alles auswählen

"<a href=\"front_content.php?idcat=" . $menupunkt["idcat"] . "\">" . $menupunkt["name"] . "</a>\n";
Mit Titel-Tag:

Code: Alles auswählen

"<a href=\"front_content.php?idcat=" . $menupunkt["idcat"] . "\">" . $menupunkt["name"] . "title=\"" . $menupunkt["name"] . "\"</a>\n";
Wichtig ist also das title=\"" . $menupunkt["name"] . "\ entsprechend einzufügen.

Re: Neues Modul: vpNavigation

Verfasst: Fr 18. Nov 2011, 13:27
von moeman
Hi Community,

ich nutze Contenido schon eine Weile, nur von PHP habe ich absolut keine Ahnung. Wäre super wenn jemand mit Know-How sich meines kleinen Problems annehmen könnte.
Ich nutze die vpnavigation und möchte dass der User beim klick auf einen Navigationspunkt (kontakt) per Anker ans Seitenende weitergeleitet wird.

Soweit ich das Ganze überblicke müsste ins Output des Moduls eine If-Abfrage die an eine spezielle idcat(des Linkes Kontakt) den Anker anghängt.

Nur wie sowas aussehen muss, weiss ich leider nicht. Hier meine Site: http://bit.ly/vuneqI


Gruß, moe

Re: Neues Modul: vpNavigation

Verfasst: Do 16. Feb 2012, 12:29
von bertiger
Hallo,

bin in PHP leider nicht so fit. Wie müßte man den Code in der Modul Ausgabe verändern damit beim Mouseover eines Menüpunktes der Hauptebene alle Menüpunkte der Hautebene mit 1. Unterebene öffnen und nicht nur die des Menüpunktes der gerade Mouserover hat?

Code: Alles auswählen

<?php 
/*********************************************** 
* CONTENIDO MODUL - OUTPUT 
* 
* Modulname   :       vpNavigation 0.2 
* Author      :     Ingo van Peeren 
* Copyright   :     Ingo van Peeren (ingo@van-peeren.de) 
* Created     :     30-03-2005 
* Modified    :     16-07-2005 
************************************************/ 


#Includes 
cInclude("frontend", "includes/functions.navigation.php"); 
cInclude("classes", "class.frontend.permissions.php"); 
cInclude("classes", "class.frontend.groups.php"); 
cInclude("classes", "class.frontend.users.php"); 


$hauptkategorie = "CMS_VALUE[0]"; 

$navitems = array(); 

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

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

         $db->query($sql); 

         while ( $db->next_record() ) { 
                     $visible = checkCatPermission($db->f("idcatlang"),$db->f("public")); 
      if ($visible) { 
            $aktiv = ""; 
            $sub_feld = nav_feld($db->f("idcat")); 
            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; 

       if (is_array($array["feld"])) { 
         if ($first) { 
           echo $indent . "<ul id=\"nav\">\n"; 
           $first = 0; 
         } 
         else echo $indent . "<ul>\n"; 
         foreach ($array["feld"] as $menupunkt) { 

           if ($menupunkt["active"] == "active") echo $indent . $indent . "<li id=\"active\">\n"; 
           elseif ($menupunkt["active"] == "activepath") echo $indent . $indent . "<li class=\"activepath\">\n"; 
           else echo $indent . $indent . "<li>\n"; 
           if (is_array($menupunkt["sub"]["feld"])) { 
             echo $indent . $indent . $indent . "<a class=\"daddy\" href=\"front_content.php?idcat=" . $menupunkt["idcat"] . "\">" . $menupunkt["name"] . "</a>\n"; 
             liste($menupunkt["sub"], $indent."    "); 
           } 
           else echo $indent . $indent . $indent . "<a 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); 

$first = 1; 

liste($navitems); 

?> 
Danke für die Hilfe!

Re: Neues Modul: vpNavigation

Verfasst: Do 16. Feb 2012, 20:33
von Dodger77
@bertiger

Das dürfte keine PHP-, sondern eher CSS-Kenntnisse erfordern. Das Modul selbst stellt ja immer alle Kategorien dar. Die Darstellung und das Verhalten (Mouseover) werden per CSS vorgenommen. Ein Ansatz könnte sein, statt

Code: Alles auswählen

#vpnavigation li:hover ul, #vpnavigation li.sfhover ul {
   left: auto;
}
etwas in der Art wie:

Code: Alles auswählen

#vpnavigation ul:hover ul, #vpnavigation ul.sfhover ul {
   left: auto;
}
zu probieren. Das müsste dann natürlich auch im Javascript für ältere Internet Explorer angepasst werden, falls man die noch benötigt.

Re: Neues Modul: vpNavigation

Verfasst: So 16. Sep 2012, 23:33
von stefkey
Hallo,

da ich ein 2. Navimodul für die 3. Ebende einsatzen muss wäre es für die Barrierefreiheit von Vorteil wenn die vpnavigation nur die ersten beiden Ebenen generiert.
Kann mir dazu jemand helfen wie hier der Output-Code angepasst werden müsste?

Ich hab nicht viel Ahnung, aber ich würde ja vermuten das man diese erste while-Schleife etwas anpassen muss. Oder?

Code: Alles auswählen

<?php
/***********************************************
* CONTENIDO MODUL - OUTPUT
*
* Modulname   :       vpNavigation 0.2
* Author      :     Ingo van Peeren
* Copyright   :     Ingo van Peeren (ingo@van-peeren.de)
* Created     :     30-03-2005
* Modified    :     16-07-2005
************************************************/


#Includes
cInclude("frontend", "includes/functions.navigation.php");
cInclude("classes", "class.frontend.permissions.php");
cInclude("classes", "class.frontend.groups.php");
cInclude("classes", "class.frontend.users.php");


$hauptkategorie = "CMS_VALUE[0]";

$navitems = array();

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

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

         $db->query($sql);

         while ( $db->next_record() ) {
                     $visible = checkCatPermission($db->f("idcatlang"),$db->f("public"));
      if ($visible) {
            $aktiv = "";
            $sub_feld = nav_feld($db->f("idcat"));
            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;

       if (is_array($array["feld"])) {
         if ($first) {
           echo $indent . "<ul id=\"nav\">\n";
           $first = 0;
         }
         else echo $indent . "<ul>\n";
         foreach ($array["feld"] as $menupunkt) {

           if ($menupunkt["active"] == "active") echo $indent . $indent . "<li id=\"active\">\n";
           elseif ($menupunkt["active"] == "activepath") echo $indent . $indent . "<li class=\"activepath\">\n";
           else echo $indent . $indent . "<li>\n";
           if (is_array($menupunkt["sub"]["feld"])) {
             echo $indent . $indent . $indent . "<a class=\"daddy\" href=\"front_content.php?idcat=" . $menupunkt["idcat"] . "\">" . $menupunkt["name"] . "</a>\n";
             liste($menupunkt["sub"], $indent."    ");
           }
           else echo $indent . $indent . $indent . "<a 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);

$first = 1;

liste($navitems);

?>

Re: Neues Modul: vpNavigation

Verfasst: Mo 3. Dez 2012, 15:30
von Nakoda
Hallo zusammen,

ich wurde gerne die Erste Menüebene mit Grafiken der jeweiligen Kategorien versehen.
Ist das machbar und wenn ja, wie?
Ich könnte mir vorstellen das man das Modul vielleicht mit eienr Auswahlmöglichkeit für einen
Menübilderordner versieht der die jeweiligen Bilder der Kategorien beinhaltet.

Danke schon mal vorab.

Re: Neues Modul: vpNavigation

Verfasst: Mo 3. Dez 2012, 16:36
von Spider IT
Hallo Armin,

ich kenne das Modul nicht, aber du kannst doch bestimmt bei der ersten Ebene (oder auch bei allen) ein id= oder class= das Alias der Kategorie mit ausgeben, oder?
Und wenn du an das Alias nicht ran kommst, kannst du auch den Namen nutzen, diesen aber per str_replace(' ', '_', capiStrReplaceDiacritics(<Name der Kategorie>))
Dann hast du eindeutige IDs oder Klassen die du per Stylesheet formatieren kannst.

Gruß
René

Re: Neues Modul: vpNavigation

Verfasst: Do 6. Dez 2012, 10:56
von Nakoda
Moin René,

danke für Deine Antwort.
Nur muss ich zu meiner Schande gestehen das sich meine PHP Kenntnisse auf ein absolutes Minimum beschränken. :oops:
Meine Stärken liegen eher in SQL Datenbanken, dem zurecht fummeln von HTML Layouts und dem basteln von Access Frontends.
Auch das füllen von Inhalten stellt die kleineren Probleme dar.
Aber hierbei muss ich echt passen.
Wenn Du gerade Zeit hast könntest Du Dir das mal anschauen und mir eine Aufwandsabschätzung, per Mail oder PN,schicken?
Oder lässt es Dein Zeitplan gerade nicht zu?