Ova struktura je implementirana u Joomla! 1.5, odvojeni su logika (programsko povezivanje), podaci i izgled. Znači da su HTML, CSS i drugi kodovi za prikazivanje Joomla!-e (u browserima) sada potupuno odvojeni od Joomla! logistike i ona je potpuno odvojena od template sistema. Ovo omogućava bolju kontrolu izgleda (dizajna) bez da se zalazi u osnovni kod Joomla-e.
Pozicije su sada definisane u templateDetails.xml. Npr:
<positions> <position>top</position> <position>left</position> </positions>
Oznaka verzije je sada deklarisana u template-u. Npr: <mosinstall type=“template”> iz 1.0.x. se zamenjuje sa <install version=“1.5” type=“template”>
Parametri mogu biti definisani u vašem šablonu. Ovo je definisano u templateDetails.xml. Podrazumevane vrednosti parametara se definišu u params.ini, koji je takođe pozvan iz templateDetails.xml kao template <file>. Parametri se mogu podešavati u Administrator Template Manager i takođe u letu upotrebom template Javascript-a.
Svaki podrazumevani sitem chrome ('views') za bilo koji modul ili komponentu može da se “pregazi” sa template-om. Podrazumevani sistem chrome za svaki modul i komponentu sada se nalazi u modules/mod_modulename/tmpl i components/com_componentname/views/layout/tmpl. Paginacija takođe može da se promeni u pagination.php.
Joomla! 1.5 sistem je prearanžiran i sada sadrži JApplication layer, koji u sebi ima brojne objekte i metode koje se pozivaju iz template index.php. Na primer: <?php mosShowHead(); ?>; se zamenjuje sa <jdoc:include type=“head” />, <?php echo $mosConfig_sitename; ?> se zamenjuje sa <?php echo $mainframe→getCfg('sitename');?>, <?php defined( '_VALID_MOS' ) or die( 'Direct Access to this location is not allowed.' ); ?> se zamenjuje sa <?php // no direct access defined( '_JEXEC' ) or die( 'Restricted access' ); ?>
U novoj verziji je i novi metod određivanja pozicija modula. Ova logika može da se upotrebljava za sklopive (collapsible) kolone (npr. nestajanje leve ili desne kolone ukoliko nemaju sadržaja). Funkcija iz 1.0.x mosCountModules se zamenjuje sa $this→countModules - dodaje se uslov: možete koristiti '+', '-', 'or' ili 'and', npr. if ($this→countModules('left or right') == 1).
Tipična struktura template direktorijuma Najopštije za template je da ima najmanje četiri fajla:
Tipični template za Joomla! 1.5 sadrži sledeće direktorijume:
Korišćenjem template overrides, moguće je kreirati Joomla!-u. Parametri i overrides omogućavaju bolju veb standardizaciju, pristupačnost, search engine optimisation (SEO) (source ordering and markup), prilagodljivost različitim jezicima i browser optimizacija (browser-dependent CSS).
Sistemski template (u /templates direktorijumu) je razvijen zbog uključivanja više CSS fajlova i standardni modules.php (module chrome) i component.php (component chrome). Možete uključiti neke podrazumevane CSS fajlove u vaš template. Npr.
<link rel="stylesheet" href="templates/system/css/system.css" type="text/css" /> <link rel="stylesheet" href="templates/system/css/general.css" type="text/css" />
Postoje i dodatni Javascript-ovi koje možete koristiti u vašem template-u. Npr.
<script type="text/javascript" src="media/system/js/mootools.js"></script> <script type="text/javascript" src="media/system/js/caption.js"></script>
Oni su uključeni u <jdoc:include type=“head” />
Više podrazumevanih “error pages” su uključeni u sistemski template (403.php i 500.php). Uvode se nove poruke o greškama, a njih definišete u <jdoc:include type=“message” />