Codebeispiel - Einfaches Hauptmenü: Unterschied zwischen den Versionen

Aus DynPG-Wiki
Wechseln zu: Navigation, Suche
 
K
 
(8 dazwischenliegende Versionen des gleichen Benutzers werden nicht angezeigt)
Zeile 1: Zeile 1:
 
[[Category:Beispiele]]
 
[[Category:Beispiele]]
'''''Beschreibung:''''' Ein simples Hauptmenü.
+
[[en:Simple main menu]]
 +
→ Hauptartikel: [[Implementation eines kompletten Hauptmenüs]]
  
'''Beispiel 5.4. einfaches Hauptmenü - Index.php'''
+
''Beschreibung:'' Ein Webseite mit einem einfachen dynamischen Navigationsmenü und einer Inhaltsanzeige.
 +
 
 +
'''Einfaches Hauptmenü - index.php'''
 
<code>[php, N]
 
<code>[php, N]
 
<?php
 
<?php
    require '../../../cms/getcontent.php';
+
  require '../dynpg/getcontent.php';                   // DynPG-Funktionalität einbinden
 
+
  $GLOBALS["DynPG"]->SetParam_PathToRoot('../dynpg/'); // DynPG-Pfad setzen
    $DynPG->SetParam_PathToRoot('../../../cms/');
+
 
?>
 
?>
 
+
 
+
 
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
 
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
 
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-US" lang="en-US">
 
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-US" lang="en-US">
<head>
+
<head>
<title>Menu-Beispiel</title>
+
  <title>Seite mit dynamischen Navigationsmenü</title>
 +
  <meta http-equiv="content-type" content="text/html; charset=iso-8859-1" />
  
<meta http-equiv="content-type" content="text/html; charset=iso-8859-1" />
+
  <link rel="stylesheet" type="text/css" href="style.css" />  <!--eigene style.css einbinden-->
 
+
</head>
<?php $DynPG->Write_CSS_JS_Header(); ?>  <!--Standard-Css von DynPG einbinden-->
+
 
 
+
<body>
<link rel="stylesheet" type="text/css" href="style.css" />  <!--style.css einbinden-->
+
  <h1>Seite mit dynamischen Navigationsmenü</h1>
</head>
+
 
+
 
+
<body>
+
<h1>Menu-Beispiel</h1>
+
 
+
<table  border="0">
+
<tr valign="top">
+
<th align="left" style="width:230px" id="hauptmenue">
+
<div style="border: 3px black solid">
+
<?php
+
//Menu anzeigen (Menu wurde in Artikel Nr. 15 eingefuegt)
+
$DynPG->SetParam_A_Anytime(true);
+
$DynPG->SetParam_A_Article(15);
+
$DynPG->Write_Article();
+
?>
+
</div>
+
</th>
+
 
+
<th id="anzeige">
+
<div style="border: 3px black solid">
+
<?php
+
//Artikel, die im Menu angeklickt wurden anzeigen
+
$DynPG->SetParam_A_Anytime(false);
+
//nur anzeigen, wenn es der Kontext (also Position im Menu) es vorgibt!
+
$DynPG->Write_Article();
+
?>
+
</div>
+
</th>
+
</tr>
+
</table>
+
</body>
+
  
 +
  <div id="navigation">
 +
    <?php
 +
    $GLOBALS["DynPG"]->SetParam_A_Anytime(true);            // dynamische Navigation immer anzeigen
 +
    $GLOBALS["DynPG"]->SetParam_A_Article(1);                // Artikelnummer der dynamischen Navigation
 +
    $GLOBALS["DynPG"]->SetParam_A_ArticleHeader(false);      // Artikelkopf (Titel, Lead-Bild und Lead-Text) ausblenden
 +
    $GLOBALS["DynPG"]->SetParam_A_CategoryNavigation(false); // Kategorienavigation (Gruppe > Untergruppe > Artikel) ausblenden
 +
    $GLOBALS["DynPG"]->SetParam_A_PrintNavigation(false);    // Drucken-Link ausblenden
 +
    $GLOBALS["DynPG"]->Write_Article();                      // dynamische Navigation ausgeben
 +
    ?>
 +
  </div>
 +
   
 +
  <div id="inhalt">
 +
    <?php
 +
    $GLOBALS["DynPG"]->Write_AllGroups();        // Gruppenlisten-Ansicht ausgeben (standardmäßig abhängig vom Navigationskontext)
 +
    $GLOBALS["DynPG"]->SetParam_AA_Maxview(10);  // Maximal zehn Einträge in Artikellisten anzeigen
 +
    $GLOBALS["DynPG"]->Write_AllArticles();      // Artikelliste-Ansicht ausgeben (standardmäßig abhängig vom Navigationskontext)
 +
    $GLOBALS["DynPG"]->SetParam_A_Anytime(false); // Parameter wieder auf false setzen (wurde bei der Navigation auf true gesetzt)
 +
    $GLOBALS["DynPG"]->Write_Article();          // Artikel-Detailansicht ausgeben
 +
    ?>
 +
  </div>
 +
</body>
 
</html>
 
</html>
 
</code>
 
</code>
  
'''Beispiel 5.5. einfaches Hauptmenü - CSS-Datei'''
+
'''Einfaches Hauptmenü - style.css'''
 
<code>[css, N]
 
<code>[css, N]
/*alle Links schwarz*/
+
/* Navigation */
a{color: black;}
+
div#navigation{
 +
  /* Angaben für ein zweispaltiges Layout */
 +
  float: left;
 +
  width:150pt;
 +
  margin-left:5pt;
 +
  margin-right:5pt;
  
#hauptmenue p{
+
  border:1px solid black;
text-align:left;
+
 
}
 
}
  
/*Navigation, Print-Button und Artikelheader unsichtbar machen*/
+
/* Inhalt */
#dynpg_A_breadcrumb{display: none;}
+
div#inhalt {
+
  /* Angaben für ein zweispaltiges Layout */
#dynpg_AA_breadcrumb_navi{display: none;}
+
  margin-left:165pt;
#dynpg_AA_breadcrumb_pages{display: none;}
+
  margin-right:5pt;
 +
}
  
#dynpg_A_btnprint{display: none;}
+
/* In allen divs innerhalb des Navigationsmenüs wird der Inhalt um 10 pt
 +
  nach rechts verschoben. Durch die Verschaltelung von divs innerhalb des
 +
  Menüs erhalten wir so eine Einrückung gemäß der Hierarchie-Ebene. */
 +
div#course_categories_menu  div  {
 +
  padding-left:10pt;
 +
}
  
#dynpg_A_header{display: none;}
+
/* Alle Links innerhalb des Navigationsmenüs */
 +
div#course_categories_menu  a {
 +
  text-decoration:none;
 +
}
 
</code>
 
</code>
  
[http://www.dynpg.ch/doku/examples/code/simplemenu/index.php Beispiel ausführen]
+
[http://examples.gampers.ch/examples/code/simplemenu/index.php Beispiel ausführen]

Aktuelle Version vom 25. April 2011, 12:48 Uhr

→ Hauptartikel: Implementation eines kompletten Hauptmenüs

Beschreibung: Ein Webseite mit einem einfachen dynamischen Navigationsmenü und einer Inhaltsanzeige.

Einfaches Hauptmenü - index.php

<?php
  require '../dynpg/getcontent.php';                   // DynPG-Funktionalität einbinden
  $GLOBALS["DynPG"]->SetParam_PathToRoot('../dynpg/'); // DynPG-Pfad setzen
?>
 
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-US" lang="en-US">
<head>
  <title>Seite mit dynamischen Navigationsmenü</title>
  <meta http-equiv="content-type" content="text/html; charset=iso-8859-1" />
 
  <link rel="stylesheet" type="text/css" href="style.css" />  <!--eigene style.css einbinden-->
</head>
 
<body>
  <h1>Seite mit dynamischen Navigationsmenü</h1>
 
  <div id="navigation">
    <?php
    $GLOBALS["DynPG"]->SetParam_A_Anytime(true);             // dynamische Navigation immer anzeigen
    $GLOBALS["DynPG"]->SetParam_A_Article(1);                // Artikelnummer der dynamischen Navigation
    $GLOBALS["DynPG"]->SetParam_A_ArticleHeader(false);      // Artikelkopf (Titel, Lead-Bild und Lead-Text) ausblenden
    $GLOBALS["DynPG"]->SetParam_A_CategoryNavigation(false); // Kategorienavigation (Gruppe > Untergruppe > Artikel) ausblenden
    $GLOBALS["DynPG"]->SetParam_A_PrintNavigation(false);    // Drucken-Link ausblenden
    $GLOBALS["DynPG"]->Write_Article();                      // dynamische Navigation ausgeben
    ?>
  </div>
 
  <div id="inhalt">
    <?php
    $GLOBALS["DynPG"]->Write_AllGroups();         // Gruppenlisten-Ansicht ausgeben (standardmäßig abhängig vom Navigationskontext)
    $GLOBALS["DynPG"]->SetParam_AA_Maxview(10);   // Maximal zehn Einträge in Artikellisten anzeigen
    $GLOBALS["DynPG"]->Write_AllArticles();       // Artikelliste-Ansicht ausgeben (standardmäßig abhängig vom Navigationskontext)
    $GLOBALS["DynPG"]->SetParam_A_Anytime(false); // Parameter wieder auf false setzen (wurde bei der Navigation auf true gesetzt)
    $GLOBALS["DynPG"]->Write_Article();           // Artikel-Detailansicht ausgeben
    ?>
  </div>
</body>
</html>

Einfaches Hauptmenü - style.css

/* Navigation */
div#navigation{
  /* Angaben für ein zweispaltiges Layout */
  float: left;
  width:150pt;
  margin-left:5pt;
  margin-right:5pt;
 
  border:1px solid black;
}
 
/* Inhalt */
div#inhalt {
  /* Angaben für ein zweispaltiges Layout */ 
  margin-left:165pt;
  margin-right:5pt;
}
 
/* In allen divs innerhalb des Navigationsmenüs wird der Inhalt um 10 pt
   nach rechts verschoben. Durch die Verschaltelung von divs innerhalb des
   Menüs erhalten wir so eine Einrückung gemäß der Hierarchie-Ebene. */
div#course_categories_menu  div  {
  padding-left:10pt;
}
 
/* Alle Links innerhalb des Navigationsmenüs */
div#course_categories_menu  a {
  text-decoration:none;
}

Beispiel ausführen