geteilte Hauptnavigation 4.6.23 (Splitted Navigation)

Contenider
Beiträge: 503
Registriert: Do 6. Apr 2006, 01:40
Kontaktdaten:

geteilte Hauptnavigation 4.6.23 (Splitted Navigation)

Beitrag von Contenider » Mo 12. Nov 2007, 16:24

Hallo Zusammen

Ich habe gerade die geteilte Hauptnavigation 4.6.2 BETA von OSI, siehe http://contenido.org/forum/viewtopic.ph ... navigation an die aktuelle Version der Hauptnavigation aus der 4.6.23 angepasst.

Das Modul habe ich eben getestet, bei mir läuft es.

Wenn OSI nicht herumschimpft, dann werde ich mein bestes geben und zu diesem Modul soweit ich kann Support leisten.

Vorteile:

- Schnelle Umsetzung
- Funktioniert mit ModRewrite
- Leichte Anpassungsmöglichkeit mit CSS
- Verwendung der bestehenden Templates

Features:

- 1. Ebene immer normal anzeigen
- 2. - 5. Ebene an anderer Stelle in anderen Container

Wichtig:

Es muss auch in dieser Version der Aufruf der Module beachtet werden; Wenn Modul "B" vor Modul "A" aufgerufen wird, gibt's Fehlermeldungen...

Diese Navigation besteht aus zwei Modulen:

Module:

Hauptnavigation Cat 1

INPUT

Code: Alles auswählen

?><?php
/***********************************************
* CONTENIDO MODUL - INPUT
*
* Modulname   :     Hauptnavigation
* Author(s)   :     Jan Lengowski, Andreas Lindner, 4fb
* Copyright   :     Contenido - four for business, Andreas Lindner
* Created     :     12.08.2005
************************************************/

#Select tree
?>
<table cellspacing="0" cellpadding="0" cellpadding="4">
  <tr>
    <td class="text"><?php echo mi18n("Baum wählen"); ?>:</td>
      <td>
        <select name="CMS_VAR[0]">
        <option value="0">-- <?php echo mi18n("kein"); ?> --</option>
          <?php
            $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
                C.idlang    = '".$lang."' AND
                B.idclient  = '".$client."' AND
                C.visible   = 1 AND
                A.level     = '0'
              ORDER BY
                A.idtree";

            $db->query($sql);

            while ( $db->next_record() ) {
              if ( "CMS_VALUE[0]" == $db->f("idcat") ) {
                echo '<option selected="selected" value="'.$db->f("idcat").'">'.$db->f("name").'</option>';
              } else {
                echo '<option value="'.$db->f("idcat").'">'.$db->f("name").'</option>';
              }
            }
          ?>
        </select>
      </td>
    </tr>
  </table>
<?php
OUTPUT

Code: Alles auswählen

<?php
/************************************************************************
* CONTENIDO MODUL - OUTPUT
*
* Modulname   :     Hauptnavigation
* Author(s)   :     Jan Lengowski, Andreas Lindner, 4fb
* Copyright   :     Contenido - four for business, Andreas Lindner
* Created     :     12.08.2005
* Modified    :     12.11.2007 - Maron Chatzifrantzis, angepasst auf
*                   Basis von OSI's "geteilte Navigation 4.6.2 BETA"
************************************************************************/

#System properties in use:
#Type: navigation, Name: idcat_homepage
#Contains idcat of tree to be displayed in main navigation

#Includes
cInclude("frontend", "includes/functions.navigation.php");

#If no tree is selected, use client setting
$start_cat = "CMS_VALUE[0]";
if ($start_cat=='') {
    $cApiClient = new cApiClient($client);
	$start_cat = $cApiClient->getProperty('navigation','idcat_homepage');
}

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
 */
if (!function_exists("catIsChildOf")) {
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, $start_cat) ) {
    $sel_idcat = $idcat;
} else {
    $sel_idcat = $start_cat;
}

/* 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, $start_cat;

        $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 != $start_cat ){

                $navitems = array();
              
                $sql = "SELECT
                            A.idcat,
                            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  = '".$start_cat."'
                        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);
                            $flag = false;
							while ($db2->next_record()&&!$flag) {
	                            if (isStartArticle($db2->f("idartlang"), $db->f("idcat"), $lang))
	                            {
									$flag = true;
	                                $target = ( $db2->f("ext") == 0 ) ? '_self' : '_blank';
	
	                                $navitems[$db->f("idcat")] = array("idcat"      => $db->f("idcat"),
	                                                                    "name"      => $db->f("name"),
	                                                                    "target"    => $target,
						                        	                    "public" => $db->f("public"),
		            					            	                "idcatlang" => $db->f("idcatlang"));
	                            }
							}
                      }

           }
           
           return true;
        }

        $sql = "SELECT
                    A.idcat,
                    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  = '$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);
				$flag = false;
                while ($db2->next_record() && !$flag) {
	                if (isStartArticle($db2->f("idartlang"), $db->f("idcat"), $lang))
	                {
						$flag = true;
	                    $target = ( $db2->f("ext") == 0 ) ? '_self' : '_blank';
	                    
	                    $tmp_nav[$db->f("idcat")] = array("idcat"   => $db->f("idcat"),
	                                                      "name"    => $db->f("name"),
	   	                        	                      "public" => $db->f("public"),
		            					            	  "idcatlang" => $db->f("idcatlang"),
	                                                      "target"  => $target);
	                }
				}
        }

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

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

}  // end function

$sql = "SELECT
            A.idcat,
            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  = '$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();
		$flag = false;
		while ($db2->next_record()&&!$flag) {
	        if (isStartArticle($db2->f("idartlang"), $db->f("idcat"), $lang))
	        {
				$flag = true;
	            $target = ( $db2->f("ext") == 0 ) ? '_self' : '_blank';
	    
	            $navitems[$db->f("idcat")] = array("idcat"  => $db->f("idcat"),
	                                               "name"   => $db->f("name"),
	  	                        	               "public" => $db->f("public"),
		            					           "idcatlang" => $db->f("idcatlang"),
	                                               "target" => $target);
	        }
		}
}

/* Create Navigation Array */
if (($sel_idcat == '') || ($sel_idcat == '0')) {
    $cApiClient = new cApiClient($client);
    $sel_idcat = $cApiClient->getProperty('navigation', 'idcat_homepage');
}

nav($sel_idcat);

/* Start Output buffer */
ob_start();

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

 /* 1. Navigation level */
 if( checkCatPermission($data['idcatlang'],$data['public']) ) {
 	$tpl->reset();
  $tpl->set('d', 'NAME',  $data['name']);
  $tpl->set('d', 'UL_STAGE', '2');
  $tpl->set('d', 'LI_STAGE', '1');
  $tpl->set('d', 'TARGET', $data['target']);
  $tpl->set('d', 'HREF',  $sess->url('front_content.php?idcat='.$data['idcat']));
  $tpl->next();
  if( $idcat == $data['idcat'] && empty($data['sub']) ) {
  	$tpl->generate('templates/mnavi_on.html', 0, 0);
  } elseif( $idcat == $data['idcat'] && !empty($data['sub']) ) {
  	$tpl->generate('templates/mnavi_on_open.html', 0, 0);
  } elseif( $idcat != $data['idcat'] && !empty($data['sub']) && catIsChildOf($sel_idcat, $data['idcat']) ) {
  	$tpl->generate('templates/mnavi_off_open.html', 0, 0);
  } else {
  	$tpl->generate('templates/mnavi_off.html', 0, 0);
  $second_subdata = $data['sub'];
  }
 } // end if
} // end foreach

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

/* Clean buffer */
ob_end_clean();

/* Output buffer-contents */

echo "  <div id=\"mnavi\">
   <ul class=\"e1\">
".$html."
   </ul>
  </div>\n";

?>
Hauptnavigation Cat 2-5

INPUT

Code: Alles auswählen

Steht nix drinnen... ;)
OUTPUT

Code: Alles auswählen

<?php

/* 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;

$sql = "SELECT
            A.idcat,
            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  = '$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();
      $flag = false;
      while ($db2->next_record()&&!$flag) {
           if (isStartArticle($db2->f("idartlang"), $db->f("idcat"), $lang))
           {
            $flag = true;
               $target = ( $db2->f("ext") == 0 ) ? '_self' : '_blank';
      
               $navitems[$db->f("idcat")] = array("idcat"  => $db->f("idcat"),
                                                  "name"   => $db->f("name"),
                                                  "public" => $db->f("public"),
                                            "idcatlang" => $db->f("idcatlang"),
                                                  "target" => $target);
           }
      }
}

/* Create Navigation Array */
if(($sel_idcat=='')||($sel_idcat=='0')){
    $cApiClient = new cApiClient($client);
    $sel_idcat = $cApiClient->getProperty('navigation', 'idcat_homepage');
}

nav($sel_idcat);

/* Start Output buffer */
ob_start();

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

   if (checkCatPermission($data['idcatlang'],$data['public'])) {







  /* 2. Navigation level */
  if( is_array($data['sub']) ) {
   foreach( $data['sub'] as $key => $data ) {
    if( checkCatPermission($data['idcatlang'],$data['public']) ) {
     $tpl->reset();
     $tpl->set('d', 'NAME',  $data['name']);
     $tpl->set('d', 'UL_STAGE', '3');
     $tpl->set('d', 'LI_STAGE', '2');
     $tpl->set('d', 'TARGET', $data['target']);
     $tpl->set('d', 'HREF',  $sess->url('front_content.php?idcat='.$data['idcat']));
     $tpl->next();
     if( $idcat == $data['idcat'] && empty($data['sub']) ) {               
     	$tpl->generate('templates/mnavi_on.html', 0, 0);                     # AKTIVER PUNKT HAT KEINE SUBCATS
     } elseif( $idcat == $data['idcat'] && !empty($data['sub']) ) {
     	$tpl->generate('templates/mnavi_on_open.html', 0, 0);                # AKTIVER PUNKT HAT SUBCATS
    	} elseif( $idcat != $data['idcat'] && is_array($data['sub']) && catIsChildOf($sel_idcat, $data['idcat']) ) {
    		$tpl->generate('templates/mnavi_off_open.html', 0, 0);               # PASSIVER PUNKT HAT SUBCATS
   		} else {
   			$tpl->generate('templates/mnavi_off.html', 0, 0);                    # PASSIVER PUNKT HAT KEINE SUBCATS
  			}

  			if( is_array( $second_subdata ) ) {
  				$last_cat = end( $second_subdata );
  			 if( $data['idcat'] == $last_cat['idcat'] ) {
  			 	$tpl->generate('templates/mnavi_end.html', 0, 0);
  			 } // end if
  			} // end if
  			$third_subdata = $data['sub'];

     /* 3. Navigation level */
     if( is_array($data['sub']) ) {
      foreach( $data['sub'] as $key => $data ) {
      	if( checkCatPermission($data['idcatlang'],$data['public']) ) {
        $tpl->reset();
        $tpl->set('d', 'NAME',  $data['name']);
        $tpl->set('d', 'UL_STAGE', '4');
        $tpl->set('d', 'LI_STAGE', '3');
        $tpl->set('d', 'TARGET', $data['target']);
        $tpl->set('d', 'HREF',  $sess->url('front_content.php?idcat='.$data['idcat']));
        $tpl->next();
        if( $idcat == $data['idcat'] && empty($data['sub'])) {
        	$tpl->generate('templates/mnavi_on.html', 0, 0);
       	} elseif( $idcat == $data['idcat'] && !empty($data['sub']) ) {
       		$tpl->generate('templates/mnavi_on_open.html', 0, 0);
      		} elseif( $idcat != $data['idcat'] && is_array($data['sub']) && catIsChildOf($sel_idcat, $data['idcat']) ) {
      			$tpl->generate('templates/mnavi_off_open.html', 0, 0);
     			} else {
     				$tpl->generate('templates/mnavi_off.html', 0, 0);
    				}

    				if( is_array($third_subdata) ) {
    					$last_cat = end( $third_subdata );
    					if( $data['idcat'] == $last_cat['idcat'] ) {
    						$tpl->generate('templates/mnavi_end.html', 0, 0);
    				 } // end if
    				} // end if
    				$forth_subdata = $data['sub'];

        /* 4. Navigation level */
        if( is_array($data['sub']) ) {
         foreach( $data['sub'] as $key => $data) {
          if( checkCatPermission($data['idcatlang'],$data['public']) ) {
           $tpl->reset();
           $tpl->set('d', 'NAME',  $data['name']);
           $tpl->set('d', 'UL_STAGE', '5');
           $tpl->set('d', 'LI_STAGE', '4');
           $tpl->set('d', 'TARGET', $data['target']);
           $tpl->set('d', 'HREF',  $sess->url('front_content.php?idcat='.$data['idcat']));
           $tpl->next();
           if( $idcat == $data['idcat'] && empty($data['sub']) ) {
           	$tpl->generate('templates/mnavi_on.html', 0, 0);
           } elseif( $idcat == $data['idcat'] && !empty($data['sub']) ) {
           	$tpl->generate('templates/mnavi_on_open.html', 0, 0);
           } elseif( $idcat != $data['idcat'] && is_array($data['sub']) && catIsChildOf($sel_idcat, $data['idcat']) ) {
           	$tpl->generate('templates/mnavi_off_open.html', 0, 0);
           } else {
           	$tpl->generate('templates/mnavi_off.html', 0, 0);
           }

           if( is_array($forth_subdata) ) {
           	$last_cat = end( $forth_subdata );
            if( $data['idcat'] == $last_cat['idcat'] ) {
            	$tpl->generate('templates/mnavi_end.html', 0, 0);
            } // end if
           } // end if
           $fith_subdata = $data['sub'];

           /* 5. Navigation level */
           if( is_array($data['sub']) ) {
           	foreach( $data['sub'] as $key => $data ) {
             if( checkCatPermission($data['idcatlang'],$data['public']) ) {
              $tpl->reset();
              $tpl->set('d', 'NAME', $data['name']);
              $tpl->set('d', 'UL_STAGE', '6');
              $tpl->set('d', 'LI_STAGE', '5');
              $tpl->set('d', 'TARGET', $data['target']);
              $tpl->set('d', 'HREF', $sess->url('front_content.php?idcat='.$data['idcat']));
              $tpl->next();
              if( $idcat == $data['idcat'] && empty($data['sub']) ) {
              	$tpl->generate('templates/mnavi_on.html', 0, 0);
              } else {
              	$tpl->generate('templates/mnavi_off.html', 0, 0);
              }

              if( is_array($fith_subdata) ) {
              	$last_cat = end($fith_subdata);
              	if( $data['idcat'] == $last_cat['idcat'] ) {
              		$tpl->generate('templates/mnavi_end.html', 0, 0);
              	} // end if
              } // end if

             } // end if
            } // end foreach
           } // end if
          } // end if
         } // end foreach
        } // end if
       } // end if
      } // end foreach
     } // end if
    } // end if
   } // end foreach
  } // end if
 } // end if
} // end foreach

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

/* Clean buffer */
ob_end_clean();

/* Output buffer-contents */
echo "  <div id=\"mnavi\">
   <ul class=\"e1\">
".$html."
   </ul>
  </div>\n";

?>
Ειμαστε στη μεση απο κατι...

blau1
Beiträge: 24
Registriert: Do 13. Jul 2006, 10:14
Wohnort: Mainz
Kontaktdaten:

Ja - es läuft...

Beitrag von blau1 » Do 13. Dez 2007, 12:53

Habe es gerade eingebaut - läuft wie gewohnt...

Vielen Dank

Matz82
Beiträge: 191
Registriert: Fr 26. Mai 2006, 13:10
Wohnort: Ilmenau
Kontaktdaten:

Beitrag von Matz82 » Do 13. Dez 2007, 22:12

Hi ho ...

wo stelle ich denn die "Ladereihenfolge" ein? :shock:

Hab soweit alles eingebaut an modulen und in-Output.
Bekomme aber die besagte Fehlermeldung
Viele Grüße,
Mathias


======================
Der letzte macht das Netz aus ! ;)
======================

Contenider
Beiträge: 503
Registriert: Do 6. Apr 2006, 01:40
Kontaktdaten:

Beitrag von Contenider » Do 13. Dez 2007, 22:17

Wichtig ist dass Du das Modul "Hauptnavigation Cat 1" vor dem Modul "Hauptnavigation Cat 2-5" in einem Container im Layout definierst, also zuordnest. Dann kommt es nicht zu der Fehlermeldung.

Dies tust Du unter Style -> Templates -> Template Auswählen (z.B. Standard)

Beispiel (richtig):

<container id="10" default="Hauptnavigation Cat 1">
<container id="20" default="Hauptnavigation Cat 2-5">

Beispiel (falsch):

<container id="10" default="Hauptnavigation Cat 2-5">
<container id="20" default="Hauptnavigation Cat 1">


Wenn Du es aufgrund Deines Layouts in der "verkehrten" Reihenfolge in dem Template konfiguriert hast, müsstest Du unter Umständen das Template noch einmal überarbeiten.
Ειμαστε στη μεση απο κατι...

derSteffen
Beiträge: 847
Registriert: Mi 14. Dez 2005, 16:15
Wohnort: Königs Wusterhausen bei Berlin
Kontaktdaten:

Beitrag von derSteffen » Mi 13. Feb 2008, 19:17

Hallo,

ich habe mal eine ungewöhnliche Frage! Was müßte ich denn machen, wenn ich die geteilte Navigation als zusammenhängende Navigation nutzen möchte? Das also Ebene 2 direkt unter Ebene 1 kommt?

Zum Beispiel:
-- Ebene 1
-- Ebene 1
-- Ebene 1
----- Ebene 2
----- Ebene 2
--------- Ebene 3
-- Ebene 1
-- Ebene 1

Wenn ich jetzt den Container mit der zweiten Ebene direkt unter der ersten Ebene packe, erhalte ich folgendes Ergebniss:
-- Ebene 1
-- Ebene 1
-- Ebene 1
----- Ebene 2
----- Ebene 2
----- Ebene 2

Danke Euch

PS: Ein Wechsel zu einer anderen ist nicht geplant!

MfG Steffen

wosch

Beitrag von wosch » Mi 13. Feb 2008, 19:30

derSteffen hat geschrieben:Was müßte ich denn machen, wenn ich die geteilte Navigation als zusammenhängende Navigation nutzen möchte?
Das geht nicht.
Das was du möchtest macht GENAU die "normale" Navi.
Nimm die, dann hast du das was du möchtest.

Wenn du die Navi nicht wechseln willst -> dann bleibt dir nichts anderes über als
1. dich entweder von deinem Wunschvorstellungen zu trennen
oder
2. Geld dafür zu bezahlen das man einen "Lexus" rückbaut in eine "Carina" :wink:

derSteffen
Beiträge: 847
Registriert: Mi 14. Dez 2005, 16:15
Wohnort: Königs Wusterhausen bei Berlin
Kontaktdaten:

Beitrag von derSteffen » Mi 13. Feb 2008, 19:48

Verdammt!!!!

Ich weiß die Frage ist doof, aber ich kann ja mal kurz erklären warum ich frage:

Ich habe ein Template, mit speziellen Modulen, welche ich erweitert habe. Es ist so das ein Modul meistens mehrere Output-Versionen hat. Es überprüft die die "idcat" und wenn der Artikel die Idcat hat oder ein childElement ist, dann wird der dazugehörige Output ausgegeben.
In der einen Version gibt es keine Ebene1 (diese Links werden mit der "Hilfsnavigation" eingeblendet) aber eine Ebene2!!!
In der anderen Version gibt es dann aber eine Ebene1 und dann beim durchklicken eine Ebene2. Wie gesagt, ich wollte das alles mit Hilfe eines Templates regeln.

:-( schnief

wosch

Beitrag von wosch » Mi 13. Feb 2008, 19:57

derSteffen hat geschrieben:In der einen Version gibt es keine Ebene1 (diese Links werden mit der "Hilfsnavigation" eingeblendet) aber eine Ebene2!!!
Das müßte sich aber mit der Hauptnavi auch realisieren lassen.
Spiel mal mit Menü hat kein Startartikel und Weiterleitung in der Hilfsnavi
Ohne Gewähr, aber das würde mich zum Spielen bis es geht rausfordern :lol:

derSteffen
Beiträge: 847
Registriert: Mi 14. Dez 2005, 16:15
Wohnort: Königs Wusterhausen bei Berlin
Kontaktdaten:

Beitrag von derSteffen » Mi 13. Feb 2008, 21:20

Hallo wosch,

ich habe es jetzt hinbekommen!

Der Tipp mit der Standard-Hauptnavigation hat es gebracht. Mir war gar nicht so richtig bewußt, dass die geteilte Navi daraus entstand.

Also habe ich jetzt so gemacht, dass in den Artikeln der definierten Cats (bzw. auch Catchild) einmal die normale Hauptnavi geladen wird und in den anderen Artikeln die zweite Ebene der geteilten Navigation.

Danke für den Gedankenanstoß.

MfG Steffen

zoot
Beiträge: 34
Registriert: Mi 1. Mär 2006, 15:19
Kontaktdaten:

Beitrag von zoot » Do 27. Mär 2008, 11:02

hallo ihr,

ich verwende das Modul auf mehreren Seiten und es klappt sehr gut, jetzt wollt ich es auf einer zweisprachigen Seite einbauen und bekomme im englisch Teil immer Fehler, mit der Standard Navigation klappt alles.
Jetzt meine frage, ist das Modul überhaupt dafür ausgelegt in zweisprachigen Seiten eingesetzt zu werden?

Gruß david

zoot
Beiträge: 34
Registriert: Mi 1. Mär 2006, 15:19
Kontaktdaten:

Beitrag von zoot » Do 27. Mär 2008, 14:32

problem gelöst,

das Modul kann man zweisprachig einsetzten, ich musste nur

Code: Alles auswählen

$tpl->set('d', 'HREF', $sess->url('front_content.php?idcat='.$data['idcat'].'&idart='.$data['idart']));
durch

Code: Alles auswählen

$tpl->set('d', 'HREF', $sess->url('front_content.php?idcat='.$data['idcat'].'&lang='.$lang));
ersetzen

GaMbIt_
Beiträge: 674
Registriert: Do 16. Mär 2006, 16:17
Kontaktdaten:

Beitrag von GaMbIt_ » Do 10. Apr 2008, 16:35

Hi Contenider...

Ich komm grad nicht so richtig drauf wie ich die Navigationlevel 2-5 gleichzeitig anzeigen lassen kann... natürlich in Abhängigkeit zur gewählten Hauptnavi...

Irgendwie steh ich da aufm Schlauch...

wosch

Beitrag von wosch » Do 10. Apr 2008, 19:28

GaMbIt_ hat geschrieben:Ich komm grad nicht so richtig drauf wie ich die Navigationlevel 2-5 gleichzeitig anzeigen lassen kann... natürlich in Abhängigkeit zur gewählten Hauptnavi...

Irgendwie steh ich da aufm Schlauch...
Les dir mal den Original-Beitrag durch:
http://contenido.org/forum/viewtopic.php?t=10487

Es ist eigentlich recht simpel. Erst Navi1, dann Navi2-5 (angezeigt wird automatisch)
hat bei mir, in der Original-Version, auf anhieb geklappt, Ebene 1 oben horinzontal - Ebene2-5 links vertikal.

GaMbIt_
Beiträge: 674
Registriert: Do 16. Mär 2006, 16:17
Kontaktdaten:

Beitrag von GaMbIt_ » Do 10. Apr 2008, 22:54

Ok... Klarer Fall von Missverständnis... und ich hab jetzt den gesamten Thread nochmal durchgelesen...

Navi Teil 1 zeigt die Hauptkategorien an...

Navi Teil 2 Zeigt die weiteren Ebenen an... das ist ganz klar..
Ich hätte aber gerne dass alle Level angezeigt werden... gleichzeitig...

Nicht nur die unterhalb des aktiven Navelements...

Ich hab jetzt behelfsmässig eine Sitemap umgebaut, da kann ich aber schlecht die aktiven Blöcke definieren...

lenanova
Beiträge: 16
Registriert: Do 10. Apr 2008, 13:14
Kontaktdaten:

Beitrag von lenanova » Di 15. Apr 2008, 15:41

Navigation wird in Cat 1 und Cat 2-5 angezeigt.

Suche noch eine Lösung für folgende "Probleme":

1. Wenn ich in der Cat 1 eine Kategorien mit Unterkategorie anklicke, dann wird der unter diesem Punkt befindliche Teil der Navigation nach rechts gerückt. Ich hätte es aber lieber, wenn der Baum so stehen bleibt.

2. Die jeweiligen Unterkategorien werden mir angezeit, aber untereinander. Ich hätte sie jedoch gern nebeneinander.

Hat jemand eine Lösung.... 8)

Gesperrt