Seite 4 von 7

Verfasst: Fr 21. Jul 2006, 13:31
von Jaypeare
rene04 hat geschrieben:hallo,

also ich hab den thread nun 5 mal durchgelesen und krampfhaft versucht ihn zu verstehen. vielleicht isses ja noch zu früh am morgen, aber ich versteh es nicht :(

kann man hier vielleicht mal einen zusammenfassung dessen posten was man nun benötigt um statt: http://www.xxx.com/xxx/ http://www.xxx.com/xxx/xxx.html bekommt?

in der hilfsnavi funktioniert es ja scheinbar nur eben in der hauptnavi nicht die von contenido mitgeliefert wird.

gruesse
Ich bin mal so frei.

Habe mich selber stundenlang durch diverse Threads gewühlt und fand auch, dass es als nicht-PHP-Crack etwas schwierig nachzuvollziehen ist. Steht zwar alles hier, was man so braucht, aber halt recht verteilt :D.

Ich habe mir erlaubt, das mal zusammenzutragen, weil ich eh grad ein kleines ToDo geschrieben habe, damit ich das später wieder nachvollziehen kann:

Für die Standard-Hauptnavigation sieht das wie folgt aus ("Ausgabe"-Teil):

Am Anfang folgende Funktion einfügen:

Code: Alles auswählen

if (!function_exists("getIdart") ) {
  function getIdart ( $idartlang ) {
     global $cfg;

     $db = new DB_Contenido;
     $sql = "SELECT idart FROM " . $cfg["tab"]["art_lang"] . " WHERE idartlang = '" . (int)$idartlang . "'";
     $db->query($sql);
     $db->next_record();

     return (int)$db->f("idart");
  }
}
Dann nach der Funktion function nav($idcat) suchen und dort alle Einträge der Form

Code: Alles auswählen

 $sql = "SELECT
 A.idcat,
 C.name
 C.public,
 C.idcatlang

erweitern zu

Code: Alles auswählen

 $sql = "SELECT
 A.idcat,
 C.name
 C.public,
 C.idcatlang,
 C.startidartlang
 
und alle Einträge der Form

Code: Alles auswählen

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

erweitern zu

Code: Alles auswählen

$navitems[$db->f("idcat")] = array("idcat" => $db->f("idcat"),
                                   "name"      => $db->f("name"),
                                   "idart"      => getIdart( $db->f("startidartlang") ),
	                           "target"    => $target,
				   "public" => $db->f("public"),
		            	   "idcatlang" => $db->f("idcatlang"));

sowie alle Einräge der Form

Code: Alles auswählen

if (checkCatPermission($data['idcatlang'],$data['public'])) {
	    $tpl->reset();
	    $tpl->set('d', 'NAME',  $data['name']);
	    $tpl->set('d', 'TARGET', $data['target']);
	    $tpl->set('d', 'HREF',  $sess->url('front_content.php?idcat='.$data['idcat']));
abändern zu

Code: Alles auswählen

if (checkCatPermission($data['idcatlang'],$data['public'])) {
	    $tpl->reset();
	    $tpl->set('d', 'NAME',  $data['name']);
	    $tpl->set('d', 'TARGET', $data['target']);
	    $tpl->set('d', 'HREF',  $sess->url('front_content.php?idcat='.$data['idcat'].'&idart='.$data['idart']));


Für alle anderen Navigationsmodule analog. Damit das auch für Module funktioniert, welche die Standard-Navigationsfunktionen benutzen (z.B. die Standard-Hilfsnavigation), müssen die gleichen Ändeungen auch in der Datei /mandantenverzeichnis/includes/functions.navigation.php in der Funktion "createNavigationArray()" vorgenommen werden.

Bei mir funktioniert das bisher prima, nochmal Dank an Stese für das tolle Mod und an alle hier, die sich bemühen zu helfen.

Falls da irgendwelche groben Schnitzer drin sein sollten bitte ich um Korrektur ;).

Verfasst: Fr 21. Jul 2006, 13:33
von rene04
das ist mal fein zusammengefasst :)

gruesse

Verfasst: Fr 21. Jul 2006, 17:52
von HerrB
Nur gehört das nicht in diesen Thread (siehe Überschrift). Könnte jemand daraus nochmal einen eigenen Thread machen? Danke.

(Ich teile diesen nicht, da man sonst den Rest nicht nachvollziehen kann).

Gruß
HerrB

Verfasst: Mi 26. Jul 2006, 14:24
von Apoptygma
Hallo,

vielleicht ist es gerade zu warm, aber bei mir wird auf der Startseite die 2. Ebene nicht angezeigt.
Erst wenn ich in der 1. einen Punkt anklicke erscheinen die Unterkategorien da wo sie hin sollen.

Startseite
Hauptnavigation : Test 1 Test 2
Unternavigation : leer

Klick auf Test 1
Seite Test1
Unternavigation : gefüllt

Was mache ich falsch (nicht schlagen, bin Anfänger) ?

Verfasst: Mi 26. Jul 2006, 14:27
von rene04
hi,

also zu warm ist es definitiv. hab hier im büro gerade 31.7 grad :(

zu deinem problem:

es ist kein problem :) das gehört so. spass beiseite, das ist der normalfall so wies bei dir ist.

gruesse

Verfasst: Mi 26. Jul 2006, 14:56
von Apoptygma
und wie bekomme ich das hin, dass die 2. Ebene von der 1. Kategorie gleich drin steht ?

Danke

Verfasst: Mi 26. Jul 2006, 15:02
von mvf
Apoptygma hat geschrieben:und wie bekomme ich das hin, dass die 2. Ebene von der 1. Kategorie gleich drin steht ?

Danke
in dem du deine startseite als starartikel in die 1.kat der 1.ebene legst vorausgesetz deine navi hat einen baum wie im beispielmandanten

mainnavigation ist level 0
menulev1 = horizontal
menulev2 dann darunter vertical

Code: Alles auswählen

Mainnavigation    (leer aber online)
    Amenulev1         (hier startartikel ablegen)
        Amenulev2
        Amenulev2
    Bmenulev1
    Bmenulev1

Verfasst: Mi 6. Sep 2006, 12:04
von DocET
erst einmal danke für das modul!

folgende problematik:
im 1. container taucht anstelle der primärnavigation die secundärnavigation auf (funktioniert auch)
der 2. container (der für die secundärnavigation) bleibt leer

die katergorien sind wie folgt aufgebaut:
1.0 primärnavigation
1.1 secundärnavigation
1.2 secundärnavigation
1.3 secundärnavigation

hat jemand eine idee woran das liegen könnte?

der code wurde nicht modifiziert...

danke!

Verfasst: Mi 6. Sep 2006, 12:13
von rene04
falsches modul im falschen container würde ich spontan sagen.

hauptnav1 in modul1 und hauptnav2 in modul2.

gruesse

Verfasst: Mi 6. Sep 2006, 13:02
von DocET
das würde praktisch bedeuten ich hätte die codes in falscher reihenfolge in die module primär/secundär gesaved.

kann ich mir nicht vorstellen.

habe dies dennoch getestet - und siehe da - fatal error.
jetzt arbeitet contenido zuerst container 1 mit der secundär ab - und danach container 2 mit der primärnavigation.

weitere ideen?

Verfasst: Mi 6. Sep 2006, 15:05
von rene04
Was 100%ig zu Fehlern führen wird ist, wenn man die Module (wie in der funktionierenden 4.4.4er Version) falschrum aufruft, d.h., erst den Container mit den anderen Ebenenen mit HTML Code abarbeiten lässt.
erster post im thread. vielleicht liegts daran.

gruesse

Verfasst: Mi 6. Sep 2006, 15:23
von DocET
hab ich schon getestet.

es wird kein container vor den 2 benötigten abgearbeitet.
erst nach diesen folgen die restlichen in denen u.a. html ist...

Verfasst: Di 24. Okt 2006, 14:15
von flom
wie kann ich denn die styles für die beiden menus (separat) festlegen?
habe im source unter anderem die klasse "navileft_active" gefunden. wenn ich im modul-source danach suche bekomme ich jedoch 0 Ergebnisse... kann mir jemand auf sie sprünge helfen? bin neu ;)

Verfasst: Di 24. Okt 2006, 14:21
von rene04
im html-editor soweit ich mich erinnere. also style->html->navfirst_open, usw....

Verfasst: Di 24. Okt 2006, 14:26
von flom
ahja danke, da geht es...