NAVIGATION
Ich setzte horizontale und vertikale Navigation kombiniert ein, wobei die/das vertikale (Unter-)Menü nur dann angezeigt werden soll, wenn auch tatsächlich Untermenüeinträge vorhanden sind (dies ist z.B. auf den Produktseiten der Fall, unter Home jedoch nicht).
Forum: Untermenü nur bedingt anzeigen
Autor: Oliver Georgi 2007/08/26
Man kann auch in einem CMS nicht alles automatisieren!
Manche Menülösung lässt sich nur über Custom Logik umsetzen.
Wichtig aber - nach Möglichkeit KEIN inline PHP nutzen. Für Deinen Fall geht es wie folgt:
Im Template füge an der Stelle, an der das vertikale Menü erscheinen soll ein
[Wichtig: Alle “Nummern” sind Strukturebenen-IDs]
Erstelle eine neue Datei navi_left_right.php in template/inc_script/frontend_render/.. und trage den folgenden Code ein:
{VERTMENU}
<?php // ---------------------------------------------------------------- // obligate check for phpwcms constants if (!defined('PHPWCMS_ROOT')) { die("You Cannot Access This Script Directly, Have a Nice Day."); } // ---------------------------------------------------------------- // Simple "Untermenue nur bedingt anzeigen" // Forum: http://forum.phpwcms.org/viewtopic.php?p=90950#p90950 // Autor: Oliver Georgi 2007/08/26 // ---------------------------------------------------------------- $_vertmenu = ''; if(isset($LEVEL_ID[1])) { $_vertmenu = trim( buildCascadingMenu( 'F,' . $LEVEL_ID[1] . ',' ) ); // this is exactly the same as {NAV_LIST_UL: F,start_level_id, } // but built with php function behind if( $_vertmenu ) { $_vertmenu = '<div class="menu">' . $_vertmenu . '</div>'; } else { $_vertmenu = ''; } } $content['all'] = str_replace( '{VERTMENU}', $_vertmenu, $content['all'] ); ?>
Verwende {VERTMENU} an der Stelle im Template, an der das Resultat erscheinen soll…