Template overrides - Joomladagen 2010 #jd10nl
-
Upload
sander-potjer -
Category
Technology
-
view
2.875 -
download
4
description
Transcript of Template overrides - Joomladagen 2010 #jd10nl
De kracht en schoonheid van template overrides
Sander Potjer
Sander Potjer Webdesigntwi$er: @sanderpotjerweb: www.sanderpotjer.nl
Wat zijn Joomla! template overrides?
Joomla! template overrides zijn een krach=ge mogelijkheid om de standaard Joomla! output naar eigen wens aan te passen.
“Plas<sche chirurgie voor Joomla!”
Beez als voorbeeldBeez zonder overrides Beez met overrides
Waarom gebruiken?
• Niet tevreden met standaard output van Joomla & extensies
• Tabellen in de template zijn not done! (ja, ook in J! 1.5...)
• Output beïnvloeden zonder core bestanden aan te passen...
• ... en die aanpassingen te verliezen bij upgraden
• Eigen func<onaliteiten toevoegen
Wanneer te gebruiken?
• Bij MVC component• Bij MVC module
• MVC staat voor‣ M = Model (bevat de applica<e logica) ‣ V = View (bevat de logica om een pagina op te bouwen)‣ C = Controller (schakel tussen het Model en de View)
• Wij bevinden ons in het ‘view’ gedeelte van het MVC model
View nader bekeken
• Meeste componenten hebben meerdere views bijv com_content‣ Archief ‣ Ar<kel‣ Categorie‣ Voorpagina‣ Sec<e
• Componenten en modules tonen informa<e via een “view”
• Module kent meestal een view
View nader bekeken
Een “view” van een component kan meerdere “templates” beva$en, bijv view categorie van com_content
‣ blog_item.php (item van blogweergave)‣ blog_links.php (lijst met links onder blogweergave)‣ blog.php (blogweergave van items)‣ blog.xml‣ default_items.php (item van lijst)‣ default.php (lijst van items)‣ default.xml
Hoe maak je een override (in beeld)?
Hoe maak je een override (in tekst)?
Maak van template blog_item.php in de sec<on view een override:
origineel
components/com_content/views/sec<on/tmpl/blog_item.php
kopiëren naar
templates/<naam>/html/com_content/sec<on/blog_item.php
En hoe voor een module?
Maak van mod_newsflash voor de default view een override:
origineel
modules/mod_newsflash/tmpl/default.php
kopiëren naar
templates/<naam>/html/mod_newsflash/default.php
Wanneer gebruikt Joomla! de overrides?
if ( com_<naam> map bestaat in templates/<naam>/html ){
gebruik de override bestanden voor de output}
else
{gebruik de standaard view bestanden van extensie
}
Genoeg theorie, nu de prak=jk!
Joomla! output verlossen van tabellen
Een goede standaard override set is van Yootheme, gra<s te downloaden op: h$p://bit.ly/overrides
BuHons verplaatsen van item in categorie blogtemplates/<naam>/html/com_content/category/blog_item.php
in de override:
Tonen van icoon voor elke categorie
in het css bestand:
Override van de pagina=eBroncode normaal Broncode met override
Met hulp van override bestand pagina<on.php in de html map
Gebruik van “pagina class achtervoegsel”Opgeven van class achtervoegsel in menuitem Achtervoegsel oproepen in template
Stylen met CSS
Voordeel: maar één template nodig ipv 10!
Gebruik van PHP voor inkorten introteksttemplates/<naam>/html/com_content/category/blog_item.php
Gebruik van PHP voor eenmalig tonen datumtemplates/<naam>/html/com_content/sec<on/blog_item.php
Wees crea=ef, ga los met overrides!
Vergeet niet...
• Updates in de gaten houden voor zowel extensies als core!
• Veiligheidsverbeteringen door te voeren in overrides
Handige links voor meer info
h$p://www.joomlacommunity.eu/nieuws/joomla-‐algemeen/381-‐tutorial-‐maak-‐je-‐eigen-‐joomla-‐template-‐overrides.html
h$p://www.yootheme.com/member-‐area/downloads/item/templates-‐15/template-‐overrides-‐15
h$p://docs.joomla.org/MVC
h$p://docs.joomla.org/Understanding_Output_Overrides
h$p://docs.joomla.org/Category:Templates
h$p://docs.joomla.org/Category:Overrides
h$p://docs.joomla.org/How_to_override_the_output_from_the_Joomla!_core
h$p://www.theartohoomla.com/topics/layout-‐overrides.html