Seite 1 von 2
geteilte Navigation 4.8.14
Verfasst: Fr 15. Apr 2011, 14:55
von sarronsarron
Hallo gibt es schon eine Lösung für eine geteilte Navigation in 4.8.14 ?
Ich möchte gerne die Hauptnaivation horizontal und die Unternavigation vertikal laufen lassen.
Für die Hauptnavigation habich schon eine einfache Lösung: Modul Naviagation_Main --> $iSelectedDepth auf 1 setzen. Fuktioniert prima.
Aber wie kann ich dieser Navigation (wird dupliziert unter Unter_Navigation_Main) sagen, dass sie mit einer bestimmten idcat beginnen soll?
Dank im Voraus
sarronsarron
Re: geteilte Navigation 4.8.14
Verfasst: Sa 16. Apr 2011, 10:41
von Oldperl
Re: geteilte Navigation 4.8.14
Verfasst: Sa 16. Apr 2011, 10:52
von sarronsarron
Hi,
danach hab ich schon gesucht. Aber nix passendes zu 4.8.14 gefunden. Das ist die Navi ganz neu gemacht.
Re: geteilte Navigation 4.8.14
Verfasst: Sa 16. Apr 2011, 11:58
von Oldperl
Hallo,
http://forum.contenido.org/viewtopic.ph ... 43&start=0
sarronsarron hat geschrieben:Aber nix passendes zu 4.8.14 gefunden.
Module im Suchergebnis laufen fast alle auch in der 4.8.14 wenn nicht anders angegeben.
sarronsarron hat geschrieben:Das ist die Navi ganz neu gemacht.
Was soll das heißen?
Gruß aus Franken
Ortwin
Re: geteilte Navigation 4.8.14
Verfasst: Sa 16. Apr 2011, 17:13
von sarronsarron
Hi,
Das Navigationsmodul von 4.8.8 ist komplett unterschiedlich programmiert wie das von 4.8.14
gruß
Re: geteilte Navigation 4.8.14
Verfasst: Sa 16. Apr 2011, 17:48
von Oldperl
Hallo,
nun das ist gut möglich, wie der Core von Contenido so wird auch am Demomandant immer wieder gearbeitet. Dabei kommt es auch immer vor, das vorhandene Module überarbeitet oder ersetzt werden. Die meisten dieser Module sind aber trotzdem über viele Versionen verwendbar, solange sie nicht auf nur in bestimmten Coreversionen vorhanden Elemente zugreifen.
Auch ein Grund warum noch viele Module der 4.6er Version in einem 4.8er Contenido ohne, oder mit kleinen, Anpassungen lauffähig sind. Du solltest dir die entsprechenden Thread aus dem Suchergebnis ruhig mal in Ruhe durchlesen, dort wird auch erklärt, wie man die Navi an eigene Menüstrukturen anpasst. Daraus läßt sich dann auch problemlos der Ablauf für eine 3-fach Navigation ableiten.
Gruß aus Franken
Ortwin
Re: geschafft - geteilte Navigation 4.8.14
Verfasst: So 17. Apr 2011, 11:26
von sarronsarron
Hi,
hab jetzt aus der Nvaigation_Main 4.8.14 selber eine geteilte Navigation gemacht.
anbei eine kleine Anleitung (bei mir funktioniert es einwandfrei)
1. im Modul Navigation_Main die Auflösetiefe andern auf "nur Stufe 1"
Zeile 40 --> $iSelectedDepth = getEffectiveSetting('navigation', 'level-depth', 1);
2. Style / Modul Templates von navigation_standard.html duplizieren auf unternavigation_standard.html
( Achtung: _li und _ul auch duplizieren )
3. Modul Navigation_Main auf Navigation_Main_Unter duplizieren.
Modul Navigation_Main_Unter ändern
nach $tpl->reset(); folgendes einfügen: (Zugriff auf die parentid)
global $rootidcat;
$db = new DB_Contenido;
$sql = "SELECT idcat,parentid FROM ".$cfg["tab"]["cat"]." WHERE idcat = '$idcat'";
$db->query($sql);
$db->next_record();
$parentidcat = $db->f("parentid");
$rootidcat = $db->f("idcat")
vor if ($iStartIdcat > 0) { folgendes einfügen ( Start ab dieser idcat)
$iStartIdcat=$parentidcat;
4. Neues Html Template zuordnen --> $tpl->generate('templates/unternavigation_standard.html');
Gruß sarronsarron
Re: geteilte Navigation 4.8.14
Verfasst: Fr 13. Mai 2011, 07:54
von derju
Hallo sarronsarron
Die Navigation funktioniert bei mir bis auf das wenn ich den Unternavigationspunkt anwähle die Unternavigation wieder verschwindet.
Hast Du mir da einen Tipp?
Beste Grüsse
derJu
Re: geteilte Navigation 4.8.14
Verfasst: Fr 13. Mai 2011, 08:16
von sarronsarron
Hast du ev. einen Link zu deinem Projekt damit ich es mir mal ansehen kann.
Gruß sarronsarron
Re: geschafft - geteilte Navigation 4.8.14
Verfasst: Do 19. Mai 2011, 09:02
von rethus
An dieser Stelle hat sich bei dir ein Fehler eingeschlichen:
sarronsarron hat geschrieben:Hi,
vor if ($iStartIdcat > 0) { folgendes einfügen ( Start ab dieser idcat)
$iStartIdcat=$parentidcat;
Hier funktioniert es bei mir nur, wenn ich
eingebe.
derJu hat geschrieben:
Die Navigation funktioniert bei mir bis auf das wenn ich den Unternavigationspunkt anwähle die Unternavigation wieder verschwindet.
Hast Du mir da einen Tipp?
Beste Grüsse
derJu
Das gleiche hab ich hier auch. Habe dabei folgendes Verhalten rausgefunden:
Klicke ich auf einen Hauptmenüpunkt, erscheint in der SubNavi auch die 1. Ebene (also ein dublikat der Hauptnavigation)
Klickt man auf einen UnterMenüPunkt verändert sich die "einstiegsebene" der Subnavigation um eine ebene nach unten.
Das Problem war halt, dass bei iStartIdcat die falsche Id übergeben wurde. Er also immer die aktuelle "parentid" als basis nahm.
Re: geteilte Navigation 4.8.14
Verfasst: Do 19. Mai 2011, 09:12
von derju
Hallo Rethus
Sobald du jetzt auf den Unterpunkt klickst verschwindet der, oder?
Beste Grüße
derJu
Re: geteilte Navigation 4.8.14
Verfasst: Do 19. Mai 2011, 11:31
von rethus
Ok, hat mir ne menge Gehirnschmalz gekostet, aber nun hab ich es hinbekommen.
es muss zwischen zwei Fällen unterschieden werden:
1) aktuelle idcat= auf erster Ebene
2) aktuelle idcat= auf unterster Ebene.
Für Fall 1 reicht es, wie sarronsarron es vorgemacht hat. Für Fall zwei muss aber eine Rekursive Abfrage erfolgen, welche sich bis auf 1. ebene hochhangelt.
Hier der Quellcode:
Code: Alles auswählen
<?php
/**
* $RCSfile$
*
* Description:
* Main Navigation, displays Navigation from a starting idcat down to the max. level set.
* For now (as of 2009-01-12) all subcategories are put inside one <ul> and are assigned css classes
* to distinguish level depth, first/last and active item property.
*
* Module requires two client settings:
* navigation_main_standard | start_idcat
* navigation_main_standard | level_depth
*
* To modify the behaviour of the module (e.g. style of URL, CSS classes, ...), you need to edit Contenido_NavMain_Util::loopCats
* @see {frontend}/includes/Util/Modules/Contenido_NavMain_Util.class.php
*
* @version 1.0.0
* @author Rudi Bieller
* @copyright four for business AG <www.4fb.de>
*
* Modified by Samuel Suther <www.suther.de>
* Modifications: Useable for Subnavigation now.
*
* {@internal
* created 2009-01-12
* }}
*
* $Id: Navigation_Standard.php 3444 2009-01-19 11:42:59Z rudi.bieller $
*/
if (!isset($db)) {
$db = new DB_Contenido();
}
if (!isset($tpl)) {
$tpl = new Template();
}
$tpl->reset();
global $rootidcat;
$baseNode = 1;
$db = new DB_Contenido;
$tmpCutId = $idcat;
// Wenns auf erster ebene ist, sublinks anzeigen
$sql = "SELECT idcat, parentid FROM ".$cfg["tab"]["cat"]." WHERE idcat = '$idcat' AND parentid='$baseNode'";
$db->query($sql);
if( $db->next_record()){
$rootidcat=$idcat;
}else{
while(getParentOf($tmpCutId, $baseNode)){
$rootidcat = $tmpCutId;
}
}
function getParentOf($parent,$baseNode){
global $db, $tmpCutId, $cfg;
$sql = "SELECT idcat, parentid FROM ".$cfg["tab"]["cat"]." WHERE idcat = '$parent'";
$db->query($sql);
if( $db->next_record() ){
$tmpCutId = $db->f("parentid");
if($db->f("parentid")==$baseNode){
$rootidcat=$db->f("idcat");
return false;}
else
return true;
}
}
cInclude('classes', 'Contenido_FrontendNavigation/Contenido_FrontendNavigation.class.php');
cInclude('frontend', 'includes/Util/Modules/Contenido_NavMain_Util.class.php');
#$iStartIdcat = getEffectiveSetting('navigation', 'idcat-home', 1);
$iSelectedDepth = getEffectiveSetting('navigation', 'level-depth', 1);
$iStartIdcat = $rootidcat;
if ($iStartIdcat > 0) {
$oFeNav = new Contenido_FrontendNavigation($db, $cfg, $client, $lang, $cfgClient);
$oFeNav->setAuth($auth);
$oFeNav->setRootCat($iStartIdcat);
$oSubCategories = $oFeNav->getSubCategories($iStartIdcat, true, true, 1);
// see if there are any subcategories to display
if ($oSubCategories->count() > 0) {
$aLevelInfo = array();
$aDepthInfo = array();
$aDepthInfo[0] = 0;
$aDepthInfo[1] = $iSelectedDepth;
foreach ($oSubCategories as $oSubCategory) {
Contenido_NavMain_Util::loopCats($oSubCategory, $oFeNav, $tpl, $cfg, $lang, $aLevelInfo, intval($idcat), $aDepthInfo);
}
$tpl->generate('templates/subnavigation_standard.html');
}
} else {
echo '<p>Navigation not configured correctly.</p>';
}
?>
Re: geteilte Navigation 4.8.14
Verfasst: Do 26. Mai 2011, 16:10
von sarronsarron
Hi rethus,
deine Navi funktioniert bei mir einwandfrei. Hauptnavigation und Unternavigation.
Jetzt brauch ich leider auch noch eine 3 Stufe also Unternavigation2.
Hast du dafür auch schon eine Lösung?
Dank im Voraus
Sarronsarron
Re: geteilte Navigation 4.8.14
Verfasst: Do 9. Jun 2011, 12:25
von rethus
Ne, keine Lösung.. aber auch kein Bedarf.. sorry...
Und da ich derzeit noch einiges an arbeit habe, bei den bezahlten Projekten... kann ich die Zeit hier für Lau leider nicht opfern. Ich könnte dir höchstens anbieten, dass gegen Aufwand abzurechnen. Bei interesse einfach kurz per ICQ oder Mail kontaktieren.
Re: geteilte Navigation 4.8.14
Verfasst: Do 9. Jun 2011, 15:41
von sarronsarron
Hi retus,
hab eine Lösung für n.... Unternavigationen gefunden.
Habs aber im Moment noch nicht sauber programmiert. Werd ich aber noch tun.
Dann muss man in dem Unternavigationsmodul nur die Stufen angeben. Fertig.
Gruß sarronsarron