phpNuke Themes verstehen?
Transcription
phpNuke Themes verstehen?
PHPNUKE THEMES VERSTEHEN? Storm4Net, 11/2002, gedruckt am: 16.11.2002 22:22:07 http://www.storm4net.de/support/download/ Seite 1 von 21 Inhaltsverzeichnis Seite 1 Einleitung ......................................................................................................................................................4 2 Verzeichnisse und Dateien ..........................................................................................................................5 2.1 Grundstruktur ........................................................................................................................................5 2.2 Templates/HTML-Dateien .....................................................................................................................5 2.3 Aufbau und Zusammenhänge ...............................................................................................................6 2.3.1 blocks.html...................................................................................................................................7 2.3.2 center_right.html ..........................................................................................................................7 2.3.3 footer.html....................................................................................................................................8 2.3.4 header.html..................................................................................................................................9 2.3.5 left_center.html ..........................................................................................................................10 2.3.6 story_home.html ........................................................................................................................11 2.3.7 story_page.html .........................................................................................................................12 2.4 tables.php............................................................................................................................................12 2.5 theme.php ...........................................................................................................................................13 2.5.1 Theme Colors Definition ............................................................................................................13 2.5.2 function themeheader()..............................................................................................................13 2.5.3 function themefooter()................................................................................................................14 2.5.4 function themeindex() ................................................................................................................15 2.5.5 function themearticle() ...............................................................................................................16 2.5.6 function themesidebox() ............................................................................................................17 2.6 style.css ..............................................................................................................................................18 3 F.A.Q.s .........................................................................................................................................................19 4 Anhang ........................................................................................................................................................20 4.1 Abbildungsverzeichnis.........................................................................................................................20 4.2 Die verwendeten Variablen in den Templates Dateien *) ....................................................................20 4.3 Die verwendeten Variablen in der theme.php .....................................................................................21 4.4 Glossar................................................................................................................................................21 4.5 Links....................................................................................................................................................21 Storm4Net, 11/2002, gedruckt am: 16.11.2002 22:22:07 http://www.storm4net.de/support/download/ Seite 2 von 21 Datum Änderung/Grund bearbeitet von 10.09.02 1.0 Ver. Erstellung Storm 07.10.02 1.1 Erweiterung mit Erläuterungen zu den Funktionen in theme.php Storm 02.11.02 1.2 Öffentliches Beta-Release Storm 16.11.02 1.3 Veröffentlichung Storm Danke an: An meine Frau und meinen Pa für das mühevolle Korrekturlesen. Copyright Alle Rechte vorbehalten. Kein Teil dieser Dokumentation darf in irgendeiner Form (Druck, Fotokopie oder einem anderen Verfahren) ohne schriftliche Genehmigung des Autors reproduziert oder unter Verwendung elektronischer Systeme verarbeitet, vervielfältigt oder verbreitet werden. Hamburg, den 28. Oktober 2002 Storm4Net, 11/2002, gedruckt am: 16.11.2002 22:22:07 http://www.storm4net.de/support/download/ Seite 3 von 21 1 Einleitung Entstanden ist die Dokumentation aufgrund der 'Zwangslage', die Ausgabe und die Zusammenhänge von phpNuke über die Templates besser verstehen zu können. Ein weiterer Faktor ist ebenso, aus meiner Sicht die unzureichenden Dokumentationen für phpNuke ab der Version 5.5. Voraussetzung für diese Dokumentation ist ein gewisses Maß an Grundkenntnissen über HTML und PHP/MySQL. Es werden die Funktionen erläutert, aber nicht die Auswirkungen von Codezeilen oder die Bedeutung der HTML-Tags. Grundlage der Dokumentation ist das Theme NukeNews. Das Theme hat sich von phpNuke 5.5 zu der Version 6.0 geringfügig geändert. So wie es im Moment aussieht, wird sich scheinbar auch die Steuerung der Ausgabe von Informationen/Texte für die Versionen 6.5/7.0 nicht grundlegend ändern. In dieser Dokumentation wird auf die einzelnen Dateien eingegangen, die zum einen für die Darstellung, also die Ausgabe der Inhalte auf dem Monitor, zum anderen die Abhängigkeiten der Funktionsaufrufe in der theme.php und der Übergabe der Daten/Variablen an die Templates erforderlich sind. Wie immer, so hat auch diese Dokumentation keinen Anspruch auf Vollständigkeit. Zudem wurde darauf verzichtet, einzelne Codezeilen oder den Programmierstil des Programmierers Francisco Burzi zu bewerten. Eine Optimierung kann sicherlich an jedem Code vorgenommen werden, dies ist aber nicht Gegenstand dieser Dokumentation. Alle technischen Angaben oder Scripte in dieser Dokumentation wurden von mir mit größter Sorgfalt erarbeitet bzw. zusammengestellt. Eventuelle Fehler sind nicht auszuschließen. Ich sehe mich daher gezwungen, darauf hinzuweisen, dass weder eine Garantie noch eine juristische Verantwortung oder irgendeine Haftung für Folgen, die auf fehlerhafte Angaben zurückgehen, übernommen werden kann. Für die Mitteilung eventueller Fehler bin ich jederzeit dankbar. Storm4Net, 11/2002, gedruckt am: 16.11.2002 22:22:07 http://www.storm4net.de/support/download/ Seite 4 von 21 2 Verzeichnisse und Dateien 2.1 Grundstruktur Abbildung 1: Grundlegende Verzeichnisstruktur Verzeichnis Inhalt / Im Theme (Haupt-) Verzeichnis liegen die Templates /images /admin Grafiken/Icons für das AdminMenü /menu Grafiken/Icons für das Modul Your Account (persönliche Homepage) /topics Verzeichnis für die Topic-Icons /webmail /style Grafiken für das Modul Webmail CSS-Datei (Cascading Stylesheet) 2.2 Templates/HTML-Dateien Verzeichnis/Dateien Beschreibung, ist zuständig für /NukeNews blocks.html Darstellung der einzelnen Blöcke center_right.html Ende des MB, Platzhalter zwischen dem MB und RB, Anfang des RB footer.html Fußzeile und Abschluss des RB header.html Kopfzeile und Anfang des LB left_center.html Ende des LB, Platzhalter zwischen dem LB und MB, Anfang des MB story_home.html Darstellung der Artikel auf der Startseite story_page.html Artikeldarstellung der Artikel, die nicht auf der Startseite erscheinen sollen und die Darstellung des Artikelarchivs tables.php Definiert die umrahmenden (globalen) Tabellen zur Darstellung der Inhalte theme.php Beinhaltet die notwendigen Funktionen zum Aufruf (Parsen) der Templates /style style.css Stylesheet-Datei zur Definition der Schriftgröße, -typ, -farbe etc. Legende: LB: MB: RB: linker Block mittlerer Block rechter Block Storm4Net, 11/2002, gedruckt am: 16.11.2002 22:22:07 http://www.storm4net.de/support/download/ Seite 5 von 21 2.3 Aufbau und Zusammenhänge header.html headerspace center_right.html blocks.html story_home.html story_page.html blocks.html left_center.html center_right.html footer.html space4 left_center.html space3 space2 space1 header.html footerspace footer.html Abbildung 2: Aufbau und Zusammenhang der Templates Durch die farbliche Darstellung können die einzelnen Zusammenhänge und Abhängigkeiten zwischen den verschiedenen Templates nachvollzogen werden. Im Header werden nicht nur die Formatierungen des eigentlichen Headers , sondern auch der Abstand des Headers zu den Blocks und der einleitende Kopf für den linken Block vorgenommen. Abstandshalter zwischen dem linken Block und dem mittleren Bereich, wo die Artikel, Mitteilungen (der Inhalt der Seite) dargestellt werden. Abstandshalter zwischen dem mittleren Bereich und des rechten Blocks. Ähnlich wie im Header besteht die Datei Footer nicht nur aus der eigentlichen Fußzeile, sondern auch aus dem Abschluss des rechten Blocks und dem Abstand der Fußzeile zu den Blocks. Die Änderungen müssen in Dateien vorgenommen werden, wo sie vom Dateinamen her eigentlich nicht hätten durchgeführt werden sollen/müssen. bzw. logisch erscheinen. Storm4Net, 11/2002, gedruckt am: 16.11.2002 22:22:07 http://www.storm4net.de/support/download/ Seite 6 von 21 2.3.1 blocks.html Abbildung 3: HTML-Code blocks.html 1 2 3 Abbildung 4: Screenshot blocks.html Die Datei blocks.html besteht aus drei Tabellen, wobei davon zwei Tabellen (+) ineinander verschachtelt sind. Zeile 1: Hier wird ein Trick zur (farbigen) Rahmenerzeugung genutzt. Die 'äußere' Tabelle dient zur umrandenden Darstellung der Überschrift Zeile 2: Die Tabelle, in der die Überschrift dargestellt wird Zeile 3: Darstellung der Überschrift des Blockes Zeile 4: Abschließende HTML-Tags für die Tabellen aus den Zeilen 1 und 2 Zeile 5: Die Tabelle um den eigentlichen Inhalt (Variable $content) darzustellen Zeile 7: Der Inhalt (Variable $content) des Blocks Zeile 8: Abschließende HTML-Tags für die Tabelle aus der Zeile 5 2.3.2 center_right.html Abbildung 5: HTML-Code center_right.html Das erste </td> schließt den mittleren Block ab. <td><img src="themes/ ... </TD> ist der Platzhalter zwischen dem mittleren und rechten Block. (Abb. 2, space3) <td><valign="top" ..> 'öffnet' den rechten Block Storm4Net, 11/2002, gedruckt am: 16.11.2002 22:22:07 http://www.storm4net.de/support/download/ Seite 7 von 21 2.3.3 footer.html Abbildung 6: HTML-Code footer.html Zeile 1-2: Abschluss des rechten Blocks (Abb. 2, space4) Zeile 3-7: 'Abstandszelle' zwischen den gesamten Blocks und dem eigentlichen Footer (Abb. 2, footerspace) Zeile 15: Der eigentliche Inhalt des Footers. Zeile 9-21: Tabelle in der die Copyright-Informationen (Logo, GNU, phpNuke etc) angezeigt werden. Storm4Net, 11/2002, gedruckt am: 16.11.2002 22:22:07 http://www.storm4net.de/support/download/ Seite 8 von 21 2.3.4 header.html Abbildung 7: HTML-Code header.html Zeile 2-16: Anzeigen des 'oberen' Headers in Tabellenform Zeile 9: Anzeigen der Suchfunktion im Header Zeile 13: Anzeigen der Drop-Down-Liste der Topics, die in der Funktion themeheader() in der Datei theme.php definiert wurde (Zeilen 52-59) Zeile 17-37: In einer weiteren Tabelle werden die einzelnen Menüpunkte mit den dazugehörigen Links angezeigt. Storm4Net, 11/2002, gedruckt am: 16.11.2002 22:22:07 http://www.storm4net.de/support/download/ Seite 9 von 21 Zeile 39-47: JavaScript Funktion zum Darstellen des aktuellen Monats. Die Monatsnamen sind in Englischer Sprache, können aber einfach umbenannt werden. Man erhält sofort ein 'deutsches' Datum. Zeile 48-53: Zeile 55-56: 'Abstandstabelle' zwischen den gesamten Blocks und dem Header (Abb. 2, headerspace) Zeile 57: Hier beginnt die (allumfassende) Tabelle, die den gesamten weiteren Seitenaufbau umrahmt, also den linken Block, den mittleren Teil und den rechten Block. Zeile 58: Platzhalter zwischen dem linken und mittleren Block. (Abb. 2, space1) Zeile 59: Öffnen des linken Blocks 2.3.5 left_center.html Abbildung 8: HTML-Code left_center.html Das erste </td> schließt den linken Block ab. <td><img src="themes/ ... </TD> ist der Platzhalter zwischen dem linken und mittleren Block (Abb. 2, space2). <td><valign="top" ..> 'öffnet' den mittleren Block Storm4Net, 11/2002, gedruckt am: 16.11.2002 22:22:07 http://www.storm4net.de/support/download/ Seite 10 von 21 2.3.6 story_home.html Abbildung 9: HTML-Code story_home.html 1 2 3 4 5 Abbildung 10: Screenshot story_home.html Zeile 1: Beginn der äußeren, umrahmenden Tabelle für den gesamten Artikel Zeile 2: Beginn der Tabelle, die die Artikelüberschrift und den Artikel selbst umschließt Zeile 3: Beginn der Tabelle, die den selbst Artikel (Titel und Inhalt) umschließt Zeile 4: Artikelüberschrift Zeile 5: Abschließende HTML-Tags für die Tabellen und (Zeile 2 bis 3) Zeile 6: Zeigt das Bild für das Theme-Topic mit dem dazugehörigen Link an Zeile 7: Der eigentliche Artikel (Variable $content) bzw. Inhalt, der angezeigt werden soll Zeile 9: Hier wird ein Trick zur (farbigen) Rahmenerzeugung genutzt. Die 'äußere' Tabelle dient zur umrandenden Darstellung des Infobereiches/Fußzeile eines Artikels(4) Zeile 10: Der eigentliche Infotext Zeile 11: Anzeige der Info, wer den Artikel geschrieben hat (+Datum +Kommentar) Zeile 12: Anzeige des Links, falls der Artikel einen erweiterten Text beinhaltet Zeile 13: Abschließende HTML-Tags für die Tabellen und (Zeile 9 bis 10) Storm4Net, 11/2002, gedruckt am: 16.11.2002 22:22:07 http://www.storm4net.de/support/download/ Seite 11 von 21 2.3.7 story_page.html Abbildung 11: HTML-Code story_page.html Die Datei story_page.html ist äquivalent der im Kapitel 2.3.6 beschriebenen Datei story_home.html. Mit diesem Template wird die Darstellung/Ausgabe der Artikel geregelt wird, die nicht auf der Startseite erscheinen und die über die Funktion Artikelarchiv abgerufen werden können. Daher auch die Unterscheidung _home für das Erscheinen auf der Startseite und _page für die Veröffentlichung als normalen Artikel. Bei der Darstellung wird auf die zusätzlichen Informationen wie Geschrieben von ($posted) und mehr ($morelink) verzichtet. 2.4 tables.php Abbildung 12: HTML-Code tables.php Für die Darstellung der Informationen im mittleren Block werden diese Tabellen genutzt. Man könnte diese Tabellen auch als generelle Tabellen zur Darstellung der Informationen bezeichnen. Der Unterschied ist, das bei OpenTable() die Daten/Informationen immer auf 100% der Seite dargestellt werden. Bei OpenTable2() fehlt die Angabe width=\"100%\", es wird also der Tabellenrahmen, je nach Länge um die Informationen gesetzt/umrahmt . Storm4Net, 11/2002, gedruckt am: 16.11.2002 22:22:07 http://www.storm4net.de/support/download/ Seite 12 von 21 2.5 theme.php 2.5.1 Theme Colors Definition $bgcolor1: Beschreibt den Tabellenhintergrund - im Theme NukeNews die Hintergrundfarbe der Mitteilungen $bgcolor2: Ist im allgemeinen der farbige Tabellenrahmen, siehe OpenTable() - im Theme NukeNews die Rahmenfarbe der Mitteilungen $bgcolor3: Derzeit keine Verwendung (im Theme NukeNews) $bgcolor4: Derzeit keine Verwendung (im Theme NukeNews) $textcolor1/2: Ist noch ein Überbleibsel aus vorherigen Nuke-Versionen, wird (so gut wie) nicht mehr in den aktuellen Standard-Themes verwendet. 2.5.2 function themeheader() Abbildung 13: HTML-Code Funktion themeheader() Zeile 43-47: Aus dem gesetzten Cookie wird der Username ausgelesen (Zeile 43). Die Funktion cookiedecode() ist in der Datei mainfile.php definiert. Wenn der Username nicht gesetzt wurde (bzw. leer ist) wird als Username Anonymous zugewiesen. Zeile 49-51: Wenn Banner angezeigt werden sollen ($banner =1) wird die Datei banner.php eingebunden. Zeile 52-59: Generierung einer HTML-Drop-Downliste. Die Topicnamen werden aus der Datenbank ausgelesen (Zeile 54/55) und als einzelne Einträge in der Liste zusammengestellt. Storm4Net, 11/2002, gedruckt am: 16.11.2002 22:22:07 http://www.storm4net.de/support/download/ Seite 13 von 21 Zeile 60-64: Abfrage, ob der Benutzer/User angemeldet ist oder nicht, wenn nicht, bekommt der Benutzer die Info, das er sich registrieren kann (Zeile 61), ansonsten wird der Benutzer persönlich mit Namen begrüßt (Zeile 63). Zeile 65: Neue Funktion in phpNuke 6.x, der User kann ein Broadcast senden. Die im mainfile.php definierte Funktion public_message() wird aufgerufen, um den Mitteilungstext der Variablen $public_msg zuzuweisen. Zeile 66: Zuweisung des Templates in eine Variable. Zeile 67: Mit der Funktion implode() fügt man den Inhalt des Templates anhand eines Trennzeichens zu einem String zusammen. Dabei werden die einzelnen Elemente/Teile nacheinander an den String angehängt. So sind alle Zeilen des Templates in der Variablen $thefile zusammengefasst. Zeile 68: Mit der Funktion addslashes() werden alle Vorkommen von bestimmten Zeichen mit einem Backslash "\" geschützt. Notwendig ist dies für die Zeile 69, wenn der String als PHP-Code ausgeführt wird. Z.B. bei einem einfachen (nicht maskierten) String wie z.B. ' gibt es eine Fehlermeldung. Folgende Zeichen werden maskiert: einfache Anführungszeichen (') doppelte Anführungszeichen (") Backslash (\) Zeile 70: Mit eval() wird der Inhalt des Strings $thefile als PHP-Code ausgeführt. Zeile 72: Aufruf der Funktion blocks(). 2.5.3 function themefooter() Abbildung 14: HTML-Code Funktion themefooter() Ausgabe des Footers. Zeile 94-102: Die Variable $index definiert, ob die rechten Blöcke (Blocks) angezeigt werden sollen. Wenn ja ($index =1) dann wird die Funktion blocks() aufgerufen. Zeile 103-109: Standardausgabe der Variablen mit Templates Storm4Net, 11/2002, gedruckt am: 16.11.2002 22:22:07 http://www.storm4net.de/support/download/ Seite 14 von 21 2.5.4 function themeindex() Abbildung 15: HTML-Code Funktion themeindex() Zeile 120: Abfrage, welches Theme eingestellt wurde. Cookie-Abfrage mit der Funktion get_theme() aus der Datei mainfile.php Zeile 121-125: Wenn es ein spezielles Icon für das Topic gibt, wird dies angezeigt, ansonsten wird das Standard-phpNuke Icon zugewiesen. Die Variable $tipath wird in der mainfile.php definiert. Zeile 126-130: Wurde eine Notiz vom Admin zum Artikel hinzugefügt, wird die Notiz formatiert und der Variablen $notes zugewiesen. Zeile 131-140: Wenn der Administrator (der den Artikel freigeschaltet hat) gleich dem Absender des Artikel ist, werden zu dem Artikel die Notizen dargestellt. (aus den Zeilen 126-130). Zeile 141-143: Zuweisung der Information, wer den Artikel veröffentlich hat. Zeile 144-149: phpnuke Standardausgabe für Informationen/Daten Storm4Net, 11/2002, gedruckt am: 16.11.2002 22:22:07 http://www.storm4net.de/support/download/ Seite 15 von 21 2.5.5 function themearticle() Abbildung 16: HTML-Code Funktion themearticle() Zeile 161: Abfrage, welches Theme eingestellt wurde. Cookie-Abfrage mit der Funktion get_theme() aus der Datei mainfile.php Zeile 162-166: Wenn es ein spezielles Icon für das Topic gibt, wird dies angezeigt, ansonsten wird das Standard-phpNuke Icon zugewiesen. Die Variable $tipath wird in der mainfile.php definiert. Zeile 167-168: Zuweisung der Information, wer den Artikel veröffentlich hat. Zeile 169-173: Wurde eine Notiz vom Admin zum Artikel hinzugefügt, wird diese formatiert und der Variablen $notes zugewiesen. Zeile 174-183: Wenn der Administrator (der den Artikel freigeschaltet hat) gleich dem Absender des Artikel ist, werden zu dem Artikel die Notizen dargestellt. (aus den Zeilen 126-130). Zeile 184-189: phpnuke Standardausgabe für Informationen/Daten Storm4Net, 11/2002, gedruckt am: 16.11.2002 22:22:07 http://www.storm4net.de/support/download/ Seite 16 von 21 2.5.6 function themesidebox() Abbildung 17: HTML-Code Funktion themesidebox() Die Funktion themesidebox() ist für die Ausgabe/Darstellung der einzelnen Blocks zuständig. Unter anderem wird die Funktion von den Dateien mainfile.php, blocks.php, article.php aufgerufen. Die einzelnen Zeilen folgen der Standardausgabe für Templates (siehe Funktion themeheader() Zeilen 66 bis 71). Storm4Net, 11/2002, gedruckt am: 16.11.2002 22:22:07 http://www.storm4net.de/support/download/ Seite 17 von 21 2.6 style.css Abbildung 18: styles.css Zeilen 1-8: Standardformatierungen Zeilen 9-12: Definition von sogenannten Pseudoformaten, das sind HTML-Bestandteile , die sich jedoch nicht durch ein eindeutiges HTML-Element ausdrücken lassen. Wie klassischerweise die Darstellung der Links. Zeilen 13: Formatierung der Titel Zeilen 14: Formatierung des eigentlichen Inhaltes Zeilen 15: Wird nur im Theme SlashOcean eingesetzt. Zeilen 16: Wird im Modul News in der index.php und article.php genutzt. Zeilen 17: Wird vom Theme Sand_Journey genutzt Zeilen 18: Ist in allen CSS-Dateien vorhanden, wird aber von keiner Datei genutzt. Zeilen 19: Wird in den Themes 3D-Fantasy, NukeNews, Slash & SlashOcean eingesetzt. Zeilen 20: Wird in den Themes 3D-Fantasy, Odyssey, Slash & SlashOcean eingesetzt. Zeilen 21: Wird nur in der Datei footer.php genutzt. Zeilen 22: Findet nur Verwendung in den Footern 1-3, die in die Tabelle config als Datenbankeinträge eingespielt werden. Zeilen 23: Ist in allen CSS-Dateien vorhanden, wird aber von keiner Datei genutzt. Storm4Net, 11/2002, gedruckt am: 16.11.2002 22:22:07 http://www.storm4net.de/support/download/ Seite 18 von 21 3 ? ! F.A.Q.s Ich will auf der ganzen Seite eine Hintergrundgrafik einfügen. In der Datei \themes\ThemeName\themes.php in der Zeile 48 muss der HTML <BODY> Befehl anpasst werden: background=\"themes/ThemeName/images/hintergrundbild.gif\" ? ! ? ! ? ! ? ! ? ! ? ! ? ! Wie kann ich eine generelle Hintergrundfarbe meiner Site einstellen? In der Datei \themes\ThemeName\themes.php in der Zeile 48 muss der HTML <BODY> Befehl anpasst werden: bgcolor=\"#FF000\" Ich will eine größere Schrift haben/einstellen. Global an einer Stelle kann die Schriftgröße leider nicht geändert werden, es muss speziell angegeben werden für welchen Bereich. Dies geschieht in der Datei \themes\ThemeName\style\style.css Mich stören die Kommentare direkt unter den Artikel(n) Geschrieben von, Mehr, usw. Die Variablen $posted und $morelink können nicht direkt in den Templates geändert werden. Dies erfordert eine Änderungen in den diversen Dateien. Ich würde gerne die Artikel zweispaltig darstellen. Mit dem Theme NukeNews ist das nicht möglich, das Theme Odyssey stellt die Artikel zweispaltig dar. Mich stört, das zu jedem Artikel das Topic-Icon angezeigt wird, wie kann ich das löschen? In den Dateien \themes\NukeNews\story_home.html in der Zeile 6 und story_page.html Zeile 7 löschen. Was soll die Datei pixel.gif? Die Datei pixel.gif ist eine 1x1 Pixel große Datei, die Farbe ist transparent. Durch die Variation der Breite und/oder Höhe kann ein Abstand zwischen Elementen, vornehmlich Tabellenzellen, pixelgenau gesteuert werden. Die Angaben in Prozent oder in Pixel für Tabellenzellen werden von den verschiedenen Browsern und auch innerhalb der Versionen unterschiedlich interpretiert. Ich will rechts keine Blocks haben, wie mache ich das? Für die Darstellung/Aktivierung des rechten Blocks ist die Variable $index zuständig. Wenn ja ($index =1) dann wird in der Funktion themefooter() die Funktion blocks() aufgerufen. Die Zuweisung $index = 0; kann direkt in das Script des Moduls eingebaut werden, was den rechten Block ein- bzw. ausblenden soll. Storm4Net, 11/2002, gedruckt am: 16.11.2002 22:22:07 http://www.storm4net.de/support/download/ Seite 19 von 21 4 Anhang 4.1 Abbildungsverzeichnis Seite Abbildung 1: Grundlegende Verzeichnisstruktur ......................................................................................................5 Abbildung 2: Aufbau und Zusammenhang der Templates .......................................................................................6 Abbildung 3: HTML-Code blocks.html ......................................................................................................................7 Abbildung 4: Screenshot blocks.html .......................................................................................................................7 Abbildung 5: HTML-Code center_right.html .............................................................................................................7 Abbildung 6: HTML-Code footer.html .......................................................................................................................8 Abbildung 7: HTML-Code header.html .....................................................................................................................9 Abbildung 8: HTML-Code left_center.html .............................................................................................................10 Abbildung 9: HTML-Code story_home.html ...........................................................................................................11 Abbildung 10: Screenshot story_home.html...........................................................................................................11 Abbildung 11: HTML-Code story_page.html ..........................................................................................................12 Abbildung 12: HTML-Code tables.php ...................................................................................................................12 Abbildung 13: HTML-Code Funktion themeheader()..............................................................................................13 Abbildung 14: HTML-Code Funktion themefooter()................................................................................................14 Abbildung 15: HTML-Code Funktion themeindex() ................................................................................................15 Abbildung 16: HTML-Code Funktion themearticle() ...............................................................................................16 Abbildung 17: HTML-Code Funktion themesidebox().............................................................................................17 Abbildung 18: styles.css.........................................................................................................................................18 4.2 Die verwendeten Variablen in den Templates Dateien $bgcolor1 $bgcolor2 $content $footer_message $morelink $posted $public_msg $sitename $theuser $title $topic $topics_list blocks center_right footer header left_center story_home story_page tables.php x x x x x x x x x x x x x x x x x - (*) Wenn nicht anders angegeben, haben die Dateien die Endung .html Storm4Net, 11/2002, gedruckt am: 16.11.2002 22:22:07 http://www.storm4net.de/support/download/ Seite 20 von 21 4.3 Die verwendeten Variablen in der theme.php Variable $aid $banners Dateiname Beschreibung mainfile.php Variable in der gespeichert wird, ob ein Banner angezeigt werden soll oder nicht (1=Ja, 0=Nein). Eingestellt wird es über die Einstellungen und Bannereinstellungen im AdminMenü. $content $footer_message $index $informant $morelink $notes $posted $public_msg Inhalt der Meldung/info, die als Broacast gesendet werden soll. $t_image Setzt sich aus dem Pfad- + Grafikennamen zusammen. $thefile $ThemeSel mainfile.php Zuweisung des Themes, was der User eingestellt hat. Die Abfrage läuft über Cookies. Wenn kein Cookie vorliegt, wird das Default-Theme eingestellt. $thetext $theuser $title $topic $topicimage $topicname Grafik für das Topic $topics_list Variable, in der der HTML-Code für die DropDown-Liste gespeichert wird $topictext Alternativtext im HTML-Code <ALT> für Grafiken $toplist Zwischenspeicher für die SWL-Abfrage $user $username 4.4 Glossar Broadcast: Footer: Header: LB: MB: RB: Template: Theme: Ein Broadcast ist eine Rundsendung (an alle User/Benutzer) Fußzeile der Seite Kopfzeile der Seite linker Block mittlerer Block rechter Block Designvorlage 4.5 Links PHP-Referenz http://www.selfphp.info HTML-Referenz http://selfhtml.teamone.de PHP-Nuke Forum http://www.kritikerseiten.de/forum Storm4Net, 11/2002, gedruckt am: 16.11.2002 22:22:07 http://www.storm4net.de/support/download/ Seite 21 von 21