ITSTUD  
 
 
 
Skapa Nya Teman - Informationsteknik
WikIt / SkapaNyaTeman
SkapaNyaTeman

Introduktion

Varje tema ligger i varsin underkatalog under themes i roten, t.ex. themes/default. Varje tema består sedan av en fil index.php som innehåller koden som behövs för att rendera sidan, och ett valfritt antal bilder m.m.

Php-filen innehåller endast en klass som ärver från Theme (includes/classes/theme.php). Denna fil innehåller ett antal funktioner som kommer att anropas när olika delar av sidan ska ritas upp.

I konstruktorn till sin klass kan man anropa basklassens konstruktor med argumentet false ($this->Theme(false);). Detta gör att funktionerna RenderBody och RenderSidebar kommer att anropas i omvänd ordning.

Alla bilder man refererar till ska skrivas som om html-filen hade legat i roten, dvs du ska skriva tex <img src="themes/default/logo.gif" />.

Denna bild förklarar terminologin

+----------------------------------------------------+
|                       Header                       |
+----------------------------------------------------+
+--------------------------------+ +-----------------+
|              Body              | |     Sidebar     |
| +----------------------------+ | | +-------------+ |
| |          bodyItem          | | | | sidebarItem | |
| +----------------------------+ | | +-------------+ |
| +----------------------------+ | | +-------------+ |
| |          bodyItem          | | | | sidebarItem | |
| +----------------------------+ | | +-------------+ |
|              ...               | |       ...       |
|                                | |                 |
+--------------------------------+ +-----------------+
+----------------------------------------------------+
|                       Footer                       |
+----------------------------------------------------+

Välja tema

Om du bara snabbt vill testa ditt tema kan du på din URL bara lägga till ?theme=tema, tex http://www.itstud.chalmers.se/?theme=notepad. Tema här är alltså namnet på din underkatalog.

Om du vill lägga in ett tema mer permanent så ska du redigera filen useredit.php. Hitta en rad som ser ut såhär:

foreach(array("four", "othe", "sten", "smurfvinter", "notepad")

Lägg till ditt tema i listan här så kommer man att kunna välja det när man går in och redigerar sin användare.

RenderHeader

function RenderHeader(/*string*/ $title, /*string*/ $baseHref, /*array*/ $sections)

Denna renderar början på sidan. $title är titeln på sidan, $baseHref används inte längre ("depricated") utan istället ska RenderCommonHead() anropas för att alla sökvägar ska fungera. $sections är en associativ array med länkar som ska visas på varje sida $section => $link, RenderSections() anropas lämpligtvis.

RenderBody

function RenderBody(/*array*/ $bodyItems)

Denna renderar sedan vart och ett av rutorna i $bodyItems. Dessa är av typen TItem eller subklassen TArticle. Vissa teman renderar dessa olika.

RenderSidebar

function RenderSidebar(/*array*/ $sidebarItems)

Denna renderar rutorna i $sidebarItems. Dessa är av typen TItem.

RenderFooter

function RenderFooter()

Denna avslutar sidan.

Ändra denna sida | Visa ändringshistorik
Senast ändrad 2005-11-07 15:36:42
 
  Disclaimer