EDV:WebSeitenEditieren: Difference between revisions
No edit summary |
No edit summary |
||
Line 153: | Line 153: | ||
Sie brauchen sich dann auch keine Gedanken mehr darüber machen, ob eine Variable vor oder nach dem |
Sie brauchen sich dann auch keine Gedanken mehr darüber machen, ob eine Variable vor oder nach dem |
||
Header definiert werden muss. |
Header definiert werden muss. |
||
Hier kann man auch den vollständigen Pfad (Variable $pathway) überschreiben. |
|||
Beispiel: |
Beispiel: |
||
Line 163: | Line 164: | ||
$instlogo="<img src=meinlogo°g°e_en°n.gif border=0 alt='Mein Logo'>"; |
$instlogo="<img src=meinlogo°g°e_en°n.gif border=0 alt='Mein Logo'>"; |
||
$title = "KIP - Robert Weis - °gMeine Seiten°eMy Pages°n |
$title = "KIP - Robert Weis - °gMeine Seiten°eMy Pages°n |
||
$ |
$pathway = "<a href='/'>KIP</a>"; |
||
$pathway .= " > <a href='/user/weis/'>Robert Weis</a>"; |
|||
$pathway .= " > <a href='/user/weis/demo/'>Demo</a>"; |
|||
$struktur = array( |
$struktur = array( |
||
Line 197: | Line 200: | ||
http://newdesign.kip.uni-heidelberg.de/user/weis/demo/ zu einem vollständigen Beispiel |
http://newdesign.kip.uni-heidelberg.de/user/weis/demo/ zu einem vollständigen Beispiel |
||
ausgebaut. |
ausgebaut. |
||
Zunächst die Hauptseite demo/index.php : |
|||
<pre> |
|||
<? |
|||
include("header.php.inc"); |
|||
?> |
|||
<h1>°gMeine Seiten°eMy pages°n</h1> |
|||
<? |
|||
include("footer.php.inc"); |
|||
</pre> |
|||
demo/extlinks/index.php : |
demo/extlinks/index.php : |
||
Line 217: | Line 232: | ||
$mainpath="extlinks"; |
$mainpath="extlinks"; |
||
$ |
$pathway .= " > <a href='/user/weis/demo/extlinks/'>°gExterne Links°eExternal Links°n</a>"; |
||
</pre> |
</pre> |
||
Revision as of 09:32, 10 March 2007
KIP-Webseiten editieren
Die Basis - Für einfache Webseiten
Das Layout
Damit Sie nicht bei jeder Webseite über die Details des Layouts nachdenken müssen und - vor allem - bei Layout-Änderungen nicht alle Webseiten anpassen müssen brauchen wir eine Trennung von Layout und Inhalt. Wir erreichen dies mit Hilfe von PHP. Das Layout mit dem Rahmen wird dafür in einen header und in einen footer getrennt. Diese werden mit
include("header.php.inc");
bzw.
include("footer.php.inc");
eingebunden. Dazwischen wird der Inhalt plaziert.
Damit sieht eine typische PHP-Webseite im Quelltext so aus:
<?php include("header.php.inc"); ?> <h1>Überschrift</h1> Text... <?php include("footer.php.inc"); ?>
Bearbeiter / Kontakt-Email
Am Fuss der Seite wird ggfs. ein Bearbeiter genannt. Um diese Angabe zusammen mit der E-Mail-Adresse und dem Seitentitel anzupassen ändern wir den Dateikopf in
<?php include("header.php.inc"); $contact="Robert Weis"; $contactemail="weis@kip.uni-heidelberg.de"; $title="Seitentitel"; ?>
Wichtig ist, dass diese Variablen nach dem include("header") plaziert werden.
Mehrsprachigkeit
ist eigentlich Zweisprachigkeit. Es geht darum, dass wir eigentlich die Webseiten auf deutsch und auf englisch anbieten möchten. Wir möchten aber nicht zwei Dateien betreuen. Als Lösung hilft hier wieder PHP. Deutsche und englische Texte werden jetzt nebeneinander eingeben:
Die Syntax ist
°gdeutscher Text°eenglish text°n
also immer in der Kombination
°g°e°n
Zwischen °g und °e steht der deutsche Text und zwischen °e und °n der englische Text.
In unserem Beispiel sieht das so aus:
<?php include("header.php.inc"); $contact="Robert Weis"; $contactemail="weis@kip.uni-heidelberg.de"; $title="°gSeitentitel°epage title°n"; ?> <h1>°gÜberschrift°eCaption°n</h1> °gdeutscher Text°eenglish text°n... <?php include("footer.php.inc"); ?>
Die Übersetzung des Layout-Rahmens geschieht automatisch.
Die anzuzeigende Sprache wird über die Eigenschaften des Browser ermittelt. Wenn der Client englisch eingestellt hat erscheint die englische Variante, sonst die deutsche.
Über den Sprachwähl-Link rechts oben kann die Sprache auch explizit gewählt werden.
Komplexere Einstellungen
Übder diese Basis-Funktionalität hinaus gibt es noch einige Methoden Navigation, Pfadangabe usw. zu beinflussen. Die Art und Weise wie das geschieht ist zur Zeit noch etwas im Fluss.
Die Navigation ist der Bereich links mit Hauptpunkten und unter jedem Hauptpunkt ist (üblicherweise) ein Untermenu.
Der Pfad steht ganz oben im Inhaltsbereich und zeigt, wo man sich im Web-Baum befindet. Jeder Teilast sollte ein Link zu dem dortigen Bereich sein.
Die Navigation ist der Bereich links mit Hauptpunkten und unter jedem Hauptpunkt ein Untermenu. Normalerweise wird über den URL ermittelt, welcher Hauptpunkt geöffnet ist. Wenn das aus dem URL nicht ermittelt werden kann bzw. wenn man einfach die Öffnung eines Hauptpunktes erzwingen möchte, kann man mit $mainpath="[hauptpunkt]"; VOR dem include('header.php.inc') einen Hauptpunkt öffnen. Im header wird das Menu aufgebaut, daher muss diese Variable VOR dem header stehen.
Beispiel:
<? $mainpath="people"; include('header.php.inc')
Die Navigation ist über ein Array definiert.
$struktur = array( );
Eigenes LOGO
Das Logo ist das Bild direkt über der Navigation. Typischerweise ist das ein Bild mit einer Breite von 204 Pixeln, Über die Variable $instlogo kann das Logo ersetzt werden.
Beispiel
<? $instlogo="<img src=pfadzumeinemlogo.gif border=0 alt='Mein Logo'>";
wieder 'VOR dem header!
Den Pfad verändern
<? $addtopathway = " > <a href='neu.php'>°gNeu°eNew°n</a>"; ?>
Einstellungen für ein Verzeichnis
Alle Einstellungen können Sie auch 'lokal' für ein Verzeichnis allen dortigen php-Dateien über die Include-Datei 'localsettings.php.inc' definieren. Sie brauchen sich dann auch keine Gedanken mehr darüber machen, ob eine Variable vor oder nach dem Header definiert werden muss. Hier kann man auch den vollständigen Pfad (Variable $pathway) überschreiben.
Beispiel:
<? // localsettings.php.inc $contact="Robert Weis"; $contactemail="weis@kip.uni-heidelberg.de"; $instlogo="<img src=meinlogo°g°e_en°n.gif border=0 alt='Mein Logo'>"; $title = "KIP - Robert Weis - °gMeine Seiten°eMy Pages°n $pathway = "<a href='/'>KIP</a>"; $pathway .= " > <a href='/user/weis/'>Robert Weis</a>"; $pathway .= " > <a href='/user/weis/demo/'>Demo</a>"; $struktur = array( "KIP" => array ( "name" => "KIP", "index" => "1", "path" => "/", ), "/user/weis/demo/" => array ( "name" => "°gMeine Seiten°eMy Pages°n", "index" => "2", "path" => "/user/weis/demo/", "submenu" = array ( "/user/weis/demo/mathematica" => "°gMathematica Einführung°eIntroduction to Mathematica°n" "/user/weis/demo/latex" => "LATEX - Links" ), ), "/user/weis/demo/extlinks/" => array ( "name" => "°gExterne Links°eExternal Links°n", "index" => "3", "path" => "/user/weis/demo/extlinks", "submenu" = array ( "http://www.uni-heidelberg.de" => "°gUniversität Heidelberg°eUniversity of Heidelberg°n" "http://www.physik.uni-heidelberg.de" => "°gFakultät für Physik und Astronomie°eDepartment of Physics and Astronomy°n" "http://google.de" => "Google" ), ), );
Beispiel
Die oben beschriebene localsettings.php.inc habe ich unter der URL http://newdesign.kip.uni-heidelberg.de/user/weis/demo/ zu einem vollständigen Beispiel ausgebaut.
Zunächst die Hauptseite demo/index.php :
<? include("header.php.inc"); ?> <h1>°gMeine Seiten°eMy pages°n</h1> <? include("footer.php.inc");
demo/extlinks/index.php :
<? include("header.php.inc"); ?> <h1>°gMeine Seiten°eMy pages°n - °gExterne Links°eExternal Links°n</h1> <? show_subindex(""); include("footer.php.inc");
demo/extlinks/localsettings.php.inc :
<? include("../localsettings.php.inc"); $mainpath="extlinks"; $pathway .= " > <a href='/user/weis/demo/extlinks/'>°gExterne Links°eExternal Links°n</a>";