Quelltext: YAML-Layout

Zur besseren Übersicht hier nochmal der gesamte Quelltext mit Zeilennummern.

Und hier gibt es ihn nochmal zum Kopieren: Quelltext ohne Zeilennummern

  1. <?php
  2. /**
  3.  * ==================================================
  4.  * Template: yaml_layout
  5.  * Version: 1.1
  6.  * Redaxo Version: 4.2.x
  7.  * HTML-/XHTML-Version: XHTML 1.0
  8.  *
  9.  * Hinweise:
  10.  * YAML3.1-konformes Seiten-Template für Redaxo 4.2.x
  11.  * XHTML-Quelltext basiert auf YAML-Version 3.1
  12.  *
  13.  * Bearbeitung: Peter Reiche
  14.  *        www.raybeam.de
  15.  *
  16.  * Datum: 13.12.2009
  17.  * Anpassung an redaxo-community-basis-addon
  18.  *
  19.  * Ursprung-Datum: 04.03.2009
  20.  * ================================================== */
  21.  
  22.  
  23. // zusätzlich einzubindende Templates:
  24. $yamlLayoutIncId = ''; // yaml_layout_inc-Template-ID
  25. $navTemplateId   = ''; // yaml_navigation-Template-ID
  26.  
  27. // optional einzubindende Templates:
  28. $authTemplateId  = ''; // authentifizierung-Template-ID
  29. $loginTemplateId = ''; // login-Template-ID
  30. $encryptEmailsId = ''; // email-adressen verschlüsseln
  31.  
  32. // Navigationsmenü, wahlweise mit <ul></ul> Auszeichnung
  33. //  <ul> einschalten:..................$subUl = 'on'
  34. //  <ul> ausschalten:..................$subUl = 'off'
  35. //  alle mit <ul> ständig anzeigen:....$subUl = 'allOn'
  36. //  alle ohne <ul> ständig anzeigen:...$subUl = 'allOff'
  37. //  Untermenü extra:...................$subUl = 'extra'
  38. $subUl = 'on';
  39.  
  40. // Grafische Layoutumrandung (z. B. Schattenränder etc.)
  41. // $graphLayoutBorder = 'on' fügt den benötigten zusätzlichen
  42. // html-Code in den Quelltext ein.
  43. $graphLayoutBorder = 'off';
  44.  
  45. // Titel und Trennzeichen für Breadcrumb-Links festlegen
  46. $bcTitle = 'Sie befinden sich hier: ';
  47. $bcDivi  = '<span class="bcDivi"> | </span>';
  48. // Servernamen im Breadcrumb mit der Startseite verlinken
  49. // $bcServerLink = 'on|off'
  50. $bcServerLink = 'off';
  51.  
  52. // Ein Zusätzliches Menü (z. B. als topnav-Menü) kann auf Basis von root-Artikeln,
  53. // die über eine Meta Info selektiert werden können, oder ohne eine Meta Info
  54. // komplett in die Variable $raNavigation übergeben werden. $raNav = 'on|off'
  55. $raNav = 'off';
  56.  
  57. // Festlegen des Meta Info Feldes für die root-Artikel (ab redaxo V. 4.x)
  58. $raMetaInfo = 'art_topnav';
  59.  
  60. // Trennzeichen für Topnav/Rootartikel-Links festlegen.
  61. // Grundeinstellung: wie Breadcrumb-Trennzeichen
  62. $raDivi  = $bcDivi;
  63.  
  64. // Festlegen des Meta Info Feldes für individuelle StyleKlassen der Kategorien
  65. // ueber $REX['csMetaInfo'] ist der Wert automatisch global, also auch in einer
  66. // Funktion sofort abrufbar
  67. $REX['csMetaInfo'] = 'cat_styleclass';
  68.  
  69. // Die Fehlerseite ergibt sich aus dem Eintrag $REX['NOTFOUND_ARTICLE_ID']:
  70. // (im Backend: Specials/Einstellungen)
  71. $notFoundArticleLink  = '?article_id='.$REX['NOTFOUND_ARTICLE_ID'];
  72.  
  73. // Bei Verwendung des Community-Basis-Addon
  74. // Spaltenname der Tabelle com_user die die individuelle Login-Artikel-ID enthält
  75. $login_article_value = 'loginarticle';
  76.  
  77. // Das Einbinden des Templates "yaml_layout_inc" muss vor der Übergabe der
  78. // Seiteninhalte an die Platzhalter für das yaml_layout-Template erfolgen
  79. if($yamlLayoutIncId)
  80. {
  81.   $yamlLayoutInc = new rex_template($yamlLayoutIncId);
  82.   include $yamlLayoutInc->getFile();
  83. }
  84.  
  85. // Übergabe der Seiteninhalte an die Platzhalter für das yaml_layout-Template, z. B.
  86. // Artikel:               $this->getArticle(1)
  87. // Fester Link:           '<a href="http://www.raybeam.de/index.php?article_id=1">der Startartikel</a>'
  88. // Hauptnavigation:       $navigation
  89. // Subnavigation:         $subNavigation
  90. // rootArtikelNavigation: $raNavigation
  91. // breadcrumb-Menü:       $breadcrumb
  92. // Login:                 $login
  93. $headerContent    = $this->getArticle(2)// Inhalte für den header-Bereich
  94. $headerTopNav     = '<a href="#">der Topnav-Link</a>';// Platzhalter für Links im Skip-Link-Bereich
  95. $headerNavigation = ''; // Platzhalter für "getrennte Hauptnavigation"
  96. $headerBreadcrumb = ''; // Platzhalter für Breadcrumb-Menü im header-Bereich
  97. $col1Navigation   = $navigation; // Platzhalter für Navigation in der ersten Float-Spalte des Inhaltsbereiches
  98. $col1Breadcrumb   = ''; // Platzhalter für Breadcrumbmenü in der ersten Float-Spalte des Inhaltsbereiches
  99. $col1Content    = $this->getArticle(3)// Platzhalter für Inhalte in der ersten Float-Spalte des Inhaltsbereiches
  100. $col2Navigation   = ''; // Platzhalter für Navigation in der zweiten Float-Spalte des Inhaltsbereiches
  101. $col2Breadcrumb   = ''; // Platzhalter für Breadcrumbmenü in der zweiten Float-Spalte des Inhaltsbereiches
  102. $col2Content    = $this->getArticle(4)// Platzhalter für Inhalte in der zweiten Float-Spalte des Inhaltsbereiches
  103. $col3Navigation   = ''; // Platzhalter für Navigation in der statischen Spalte des Inhaltsbereiches
  104. $col3Breadcrumb   = $breadcrumb; // Platzhalter für Breadcrumbmenü in der statischen Spalte des Inhaltsbereiches
  105. $col3Content    = $this->getArticle(1)// Platzhalter für Inhalte in der statischen Spalte des Inhaltsbereiches
  106. $footerNavigation = ''; // Platzhalter für Navigation im Footer-Bereich
  107. $footerContent    = $this->getArticle(5)// Inhalte für den Footerbereich
  108.  
  109. // Einzubindende YAML3.0-Stylesheets
  110. $yamlStylesheet     = 'files/css/my_layout.css';
  111. $yamlPatchesStylesheet  = 'files/css/patches/patch_my_layout.css';
  112.  
  113. // Hier folgt die Quelltext-Struktur entsprechend der YAML3.0-Datei markup_draft.html
  114. ?>
  115. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
  116. <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="de" lang="de">
  117. <head>
  118.   <title><?php print $REX['SERVERNAME'].' | '.$this->getValue("name"); ?></title>
  119.   <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
  120.   <!-- (en) Add your meta data here -->
  121.   <!-- Fügen Sie hier ihre Meta-Daten ein -->
  122.   <meta name="keywords" content="<?php print $metaKeywords; ?>" />
  123.     <meta name="description" content="<?php print $metaDescription; ?>" />
  124.   <link href="<?php echo $REX['HTDOCS_PATH'].$yamlStylesheet ?>" rel="stylesheet" type="text/css"/>
  125.   <!--[if lte IE 7]>
  126.     <link href="<?php echo $REX['HTDOCS_PATH'].$yamlPatchesStylesheet ?>" rel="stylesheet" type="text/css" />
  127.   <![endif]-->
  128. </head>
  129. <body>
  130.   <div class="page_margins">
  131.   <?php if($graphLayoutBorder=='on')echo "\t<div id=\"border-top\">\n\t\t\t<div id=\"edge-tl\"></div>\n\t\t\t<div id=\"edge-tr\"></div>\n\t\t</div>\n"?>
  132.     <div class="page">
  133.       <div id="header">
  134.         <div id="topnav">
  135.             <!-- Start: Skiplink-Navigation -->
  136.           <a class="skip" href="#navigation" title="Direkt zur Navigation springen">Zur Navigation springen</a><span class="hideme">.</span>
  137.           <a class="skip" href="#content" title="Direkt zum Inhalt springen">Zum Inhalt springen</a><span class="hideme">.</span>
  138.             <!-- Ende: Skiplink-Navigation -->
  139.             <?php print $headerTopNav; ?>
  140.         </div>
  141.         <?php print $headerContent; ?>
  142.       </div>
  143.  
  144.       <!-- #nav: Hauptnavigation -->
  145.       <div id="nav">
  146.         <a id="navigation" name="navigation"></a> <!-- Skiplink-Anker: Navigation -->
  147.         <?php print $headerNavigation; ?>
  148.         <?php print $headerBreadcrumb; ?>
  149.       </div>
  150.       <!-- #nav: - Ende -->
  151.  
  152.       <!-- #main: Beginn Inhaltsbereich -->
  153.  
  154.       <div id="main">
  155.         <a id="content" name="content"></a> <!-- Skiplink-Anker: Content -->
  156.  
  157.         <!-- #col1: Erste Float-Spalte des Inhaltsbereiches -->
  158.           <div id="col1">
  159.               <div id="col1_content" class="clearfix">
  160.                 <?php print $col1Breadcrumb; ?>
  161.                 <?php print $col1Navigation; ?>
  162.                 <?php print $col1Content; ?>
  163.             </div>
  164.           </div>
  165.         <!-- #col1: - Ende -->
  166.  
  167.         <!-- #col2: zweite Flaot-Spalte des Inhaltsbereiches -->
  168.           <div id="col2">
  169.               <div id="col2_content" class="clearfix">
  170.             <?php print $col2Breadcrumb; ?>
  171.                 <?php print $col2Navigation; ?>
  172.                 <?php print $col2Content; ?>
  173.               </div>
  174.           </div>
  175.  
  176.         <!-- #col2: - Ende -->
  177.  
  178.         <!-- #col3: Statische Spalte des Inhaltsbereiches -->
  179.           <div id="col3">
  180.               <div id="col3_content" class="clearfix">
  181.                 <?php print $col3Breadcrumb; ?>
  182.                 <?php print $col3Navigation; ?>
  183.                 <?php print $col3Content; ?>
  184.             </div>      <!-- IE Column Clearing -->
  185.               <div id="ie_clearing">&nbsp;</div>
  186.             <!-- Ende: IE Column Clearing -->
  187.         </div>
  188.         <!-- #col3: - Ende -->
  189.  
  190.       </div>
  191.       <!-- #main: - Ende -->
  192.  
  193.       <!-- #Footer: Beginn Fußzeile -->
  194.       <div id="footer">
  195.           <?php print $footerNavigation; ?>
  196.             <?php print $footerContent; ?>
  197.       </div>
  198.       <!-- #Footer: Ende -->
  199.     </div>
  200.   <?php if($graphLayoutBorder=='on')echo "\t<div id=\"border-bottom\">\n\t\t\t<div id=\"edge-bl\"></div>\n\t\t\t<div id=\"edge-br\"></div>\n\t\t</div>\n"?>
  201.   </div>
  202. </body>
  203. </html>
  204.