===== Šta je Joomla template? =====
Joomla šablon je skup datoteka u okviru Joomla CMS koje kontrolišu prezentaciju (prikaz) sadržaja. Joomla šablon nije veb sajt; takođe, nije kompletan dizajn veb sajta. Template je osnovni dizajn izgleda vašeg Joomla veb sajta. To znači da je potpuno odvojen sadržaj (koji se nalazi u bazi)i prezentacija, posebno kada se koristi CSS za izgled (suprotno od korišćenja tabela u index.php datoteci). Ovo je jedan od osnovnih kriterijuma modernih veb sajtova. Novi šablon i odatle kompletno novi izgled veb sajta može da se primeni brzo. Ovo je moguće čak i ako imate različite pozicije sadržaja kao i boja i grafika. Takođe koriste se i uslovne PHP komande za kreiranje prikaza kojim se dinamički određuje broj kolona u zavisnosti od sadržaja koji se objavljuje.
===== Od čega se sastoji Joomla template? =====
Šablon se sadrži od nekoliko datoteka i direktorijuma. Te datoteke moraju biti u /templates/ direktorijumu Joomla instalacije i u svom zasebnom poddirektorijumu. Što znači da ako imamo dva šablona instalirana, to bi izgledalo recimo ovako:
/templates/prvitemp
/templates/drugitemp
Primetićete da nazivi direktorijuma moraju imati isto ime kao i template, u ovom slučaju element i voodoo. Uočljivo je da su „case sensitive“ (bitno je da li su mala ili velika slova) i ne mogu sadržavati razmake.
U okviru template direktorijuma su ključne datoteke:
/prvitemp/templateDetails.xml
/prvitemp/index.php
Nazivi i lokacija ove dve datoteke moraju se podudarati sa onim kako se pozivaju iz osnovnog Joomla skripta.
===== Tipična struktura Template direktorijuma =====
Tipični template za Joomla! 1.5 sadrži sledeće direktorijume:
* /css – sadrži sve .css fajlove
* /html – sadrži template “override” fajlove za osnovni izlaz i “module chrome”
* /images – sadrži sve slike koje koristi template
Osnovna struktura šablona treba da sadrži najmanje ove četiri datoteke:
==== templateDetails.xml ====
Ovo je XML format metadata file koji govori Joomla-i koje druge datoteke su potrebne kada se učitava strana koja koristi ovaj šablon. Obratite pažnju na veliko "D." Takođe sadrži i ime autora, autorska prava i koje datoteke čine šablon (uključujući i slike). Na kraju služi i za instaliranje šablona kada se koristi admistratorski backend.
templateDetails.xml mora sadržati nazive svih datoteka koje su sadržane u šablonu. Takođe sadrži i informacije kao što su autori i autorska prava. Neki od tih su prikazani u administratorskom delu Template Manager-a. Primer XML datoteke:
TemplateTutorialMaj 2008ImeiPrezimeGPL adresaautora@gmail.com www.urlautora.net1.0opis templateaindex.phptemplateDetails.xmljs/somejsfile.jsimages/threecol-l.gifimages/threecol-r.gifcss/customize.csscss/layout.csscss/template_css.cssuser1topleftbannerrightfooter
Objašnjenja:
* . Instrukcija za backend instaler. Opcija type="template" govori instaleru da je reč o instalaciji šablona i da je za Joomla 1.5.
* TemplateTutorial15. Definiše naziv vašeg šablona. Ime koje ovde navodite će se iskoristiti za kreiranje direktorijuma u okviru template direktorijuma. Zbog toga ne sme sadržati karaktere sa kojima sistem ne može da radi npr. razmaci. Ako instalirate manuelno, morate kreirati direktorijum koji se zove identično kao i ime šablona.
* Maj 2008. Datum kada je kreiran šablon. Možete ga uneti u bilo kom formatu npr. May 2005, 08-June-1978, 01/01/2004, itd.
* Ime i Prezime. Ime autora šablona.
* GPL. Sve informacije o autorskim pravima idu u ovaj element.
* adresaautora@gmail.com. Email addresa autora.
* www.urlautora.net. URL autorovog veb sajta.
* 1.0. Verzija šablona.
* . Različite datoteke koje se koriste u šablonu, a njihovi nazivi se stavljaju između tagova:
index.phptemplateDetails.xmljs/somejsfile.jsimages/threecol-l.gifimages/threecol-r.gifcss/customize.csscss/layout.csscss/template_css.css
* "files" sekcija sadrži sve generičke datoteke kao što je PHP izvorni kod šablona ili thumbnail image za pregled šablona. Svaka datoteka koja je navedena u ovoj sekciji je između . Takođe su navedene i dodatne datoteke kao što je npr. JavaScript koji šablon koristi.
* Sve slike koje šablon koristi su takođe nabrojane u okviru sekcije, takođe između . Informacije o putanji su relativne u odnosu na root template-a. Npr. ako je šablon u direktorijumu 'YourTemplate', i sve slike su u poddirektorijumu 'images' tada je prava putanja: images/my_image.jpg
* Na kraju sve CSS datoteke su navedene u sekciji, takođe između , sa putanjom relativnom u odnosu na template root.
* . Pozicije modula koji se koriste u šablonu.
* . Ovo opisuje parametre koji su ugrađeni kao napredne funkcije šablona, kao što je npr. promena boje šablona.
==== index.php ====
Šta je index.php datoteka? To je kombinacija (X)HTML i PHP skripte koja određuje sve što se tiče prikaza i prezentacije stranice.
**Šta sadrži index.php?**
Prvo da vidimo kritični deo za dobijanje ispravnog šablona, DOCTYPE na vrhu u index.php datoteci. Ovo je deo koda koji ide u sam vrh svake veb strane. U vrhu naše strane mi imamo sledeće:
Prva PHP naredba koja osigurava nemogućnost direktnog pristupa datoteci iz bezbednosnih razloga.
DOCTYPE je jedna od fundamentalnih komponenti – kako se veb strana prikazuje u browseru, posebno, kako browser interpretira CSS.
Možete koristiti različite DOCTYPE. Osnovno, DOCTYPE (document type declaration) govori browseru kako da interpretira stranu.
HTML 4.01specificira tri tipa: Strict, Transitional i Frameset.
Sledeće je XML naredba (posle DOCTYPE):
**Šta sačinjava ?**
language; ?> uzima jezik definisan u Global Configuration.
Sledeća linija je uključivanje još nekih header informacija:
Ovo su sve header informacije koje su podešene u Global Configuration. Sadrže sledeće tagove (u podrazumevanoj instalaciji):
Welcome to the Frontpage
Neke od ovih header informacija su kreirane u letu u zavisnosti od specifičnosti strane odnosno sadržaja koji je u njoj. Sadrži i brojne metatags[md]the favicon, RSS feed URLs, i neke standardne JavaScipt datoteke.
Poslednje linije u headeru definišu link sa CSS datotekom:
Prve dve datoteke system.css i general.css sadrže neke genričke Joomla stilove. Najmanje jedan je CSS za šablon, ovde nazvan template.css.
PHP code template ?> vraća ime tekućeg šablona. Pisanje u ovom formatu a ne pisanje prave putanje čini kod više generičkim. Kada kreirate novi template možete kopirati ceo header koda bez da morate išta menjati.
Template CSS datoteka može biti više, npr. uslovni za različite browsere. Ovo je za IE6:
Ovo je primer za korišćenje template parametara:
Naš kod u index.php je:
getCfg('sitename');?>
== Pozicioniranje modula? ==
Ova linija ubacuje lokaciju modula:
Puna sintaksa je sledeća
Detaljniji opis nalazi se u [[Pozicioniranje modula|delu o modulima]]
==== template.css ====
CSS datoteka šablona uređuje prezentacioni deo šablona, odnosno font, margine, zaglavlja, itd... Lokacija direktorijuma je opciona, ali morate ga tačno navesti u index.php datoteci. Možete ga zvati kako želite. Moguće je imati i više CSS datoteka.
==== template_thumbnail.ext ====
Zamenite .ext sa nekim od formata slika (.jpg, .png, .gif)
Generalno to je slika u formatu 200x150 pixela koja prikazuje izgled strane kada se kursorom pređe preko naziva šablona u Template Manager-u. Ovo omogućava administratoru da vidi kako izgleda template pre nego što ga primeni na sajt.