[[cis:allgemeines|zurück zur Übersicht]] ====== Templates (CMS) ====== Um einzelnen Contents ein spezifisches Layout zuzuweisen sowie diese innerhalb der Menüstruktur gezielt zu platzieren, stehen unterschiedliche Templates (Formatvorlagen) zur Verfügung: * **Content mit Titel**\\ Dies ist das Standard-Template für gewöhnliche Contents. Es erstellt eine Seite mit Überschrift und statischem Inhalt. * **Redirects**\\ Um auf Seiten zu verlinken, welche sich nicht im CMS befinden, ist das Redirect Template zu verwenden. Hier kann auf eine beliebige URL verlinkt werden. In der Redirect URL können Variablen verwendet werden.\\ \\ z.B.: news.php?stg_kz=$stg_kz * **Include Menu Addons**\\ Das Menü besteht teilweise aus dynamischem Content, welcher mithilfe dieses Templates erzeugt werden kann. Darin wird die URL zu einem PHP Script angegeben, welches sich im Verzeichnis /cms/menu/ befindet. Dieses Script enthält eine Klasse, welche von der menu_addon Klasse abgeleitet ist. Diese Klasse erzeugt den Content, der unterhalb des Menüpunkts angezeigt wird. \\ ==== News ==== [[cis:news|News-Einträge]] werden grundsätzlich nicht über das CMS sondern eine eigene Newsverwaltung erfasst. Nach dem Erfassen eines neuen Newseintrages können jedoch die sprachspezifischen Informationen im CMS verwaltet werden. Dazu klickt man oberhalb des Content-Menüs auf den Link //News//. Anschließend werden die neuesten Newseinträge angezeigt und können bei Bedarf editiert werden. \\ ===== Anwendungsfälle ===== Im Folgenden werden Beispiele für die Verwendung von Templates angeführt. ^ Szenario ^ Beschreibung ^ |**Link auf eigenen Menübaum**| Per //Redirect template// können im Mnü Links eingefügt werden, welche auf ein Submenü verweisen. Es wird dann nur das angegebene Submenü angezeigt. (zb Freifächer, Lehre, Mein CIS):\\ \\ template: Redirect\\ url: ?content_id=12\\ target: _self\\ \\ Ist das angezeigte Menü nicht das Startmenü, wird automatisch der Button //Zurück// angezeigt.| |**Link auf PHP-Scripts**| Das//Redirect Template// findet auch Anwendung, um externe PHP-Scripte aufrufen zu können:\\ \\ template: Redirect\\ url: ../cis/private/script.php\\ target: content| |**Content mehrfach verlinken**| Möchte man einen content an mehreren Stellen der Menüstruktur einfügen ist hierzu ebenso das //Redirect Template// zu verwenden. Es ermöglicht auch die Verwendung unterschiedlicher Bezeichnungen, indem ein Eintrag als Redirect auf einen anderen fungiert.\\ \\ template: Redirect\\ url: ../cms/content.php?content_id=12\\ target: content\\ target: content| |**Abstand innerhalb der Menüstruktur**| Wenn zwischen den Menüeinträgen ein Abstand eingefügt werden soll, ist dies über das //Spacer-Addon// durchzuführen:\\ \\ template: include\\ url: menu_addon_spacer.inc.php\\ \\ Diese Seite kann dann als Child zum Menü hinzugefügt und an der entsprechenden Stelle plaziert werden. Dadurch entsteht eine Leerzeile.| |**Include Menü Addons**| Mithilfe des //Redirect Template// eines Include Menü Addons (zB LV-Auswahl, Freifächerliste, MeineLVs, Zeitsperren)\\ \\ template: include\\ url: menu_addon_meinelv.inc.php| |**Links im Variablen**| Bei manchen Links müssen Variablen als Parameter übergeben werden (zB. Newsverwaltung). Diese können bei Redirects mittels $variablenname eingefügt werden.\\ \\ template: redirect\\ url: ../cms/newsverwaltung.php?studiengang_kz=$studiengang_kz&semester=$semester\\ \\ Die Variablen werden entweder durch ein IncludeAddon gesetzt oder als Parameter an das menue.php übergeben.| |**Menüeintrag erweitern ohne Link**| Menüeinträge ohne eigenen content, welche nur zur Gruppierung von Links verwendet werden, sind mittels //Redirect Template// zu erstellen. Dadurch bleibt die derzeit angezeigte Seite bestehen und lediglich das Menü lässt sich erweitern bzw. minimieren (zB. Lehre)\\ \\ template: Redirect\\ url: #Lehre\\ target: _self| \\