Hey cooks,
Thanks to cook, building the application layer of your components is far less time consuming - in fact, its a breeze. With all of the heavy lifting taken care of by cook for this, now, the most time consuming part of developing your component will probably be implementing a functional UI: styling your component's output and coding some nice app-like JS features. With that can sometimes come some painful merging of views & layouts that can also lead to mistakes and loss of work if you're not careful. This is UNDESIRABLE!!!
Therefore, I thought I'd share a sometimes overlooked way of templating your component that will help minimise overwriting your modifications during the design phase and every time you rebuild in Cook. Naturally, an IDE will help you with this massively but that's a different subject. If you're considering an IDE or want to share your experience with one, please go here:
www.j-cook.pro/forum/33-developper-resso...-for-php-development
So, you're almost certainly aware of
template overrides in joomla, whether or not you've implemented them before or not. To summarise, a template override is almost a 'clone' of some (or all) views/layouts of a component or module that has been rearranged and/or re-styled . Creating a template override is a simple as copying all of the layouts from your view's
tmpl folder into your
template/html/component_name/view_name/layout.php then adjusting their output as required.
So, if you follow this method of styling your component (and possibly its modules), you can keep all of your modifications in tact and at the end of your project, you could replace all of your component's views/layouts with those in the template overrides. All you have to do then is repackage it and you're done!
N.B. Template overrides will only work in the
active template so, if you want to develop a component that works out-of-the-box in the default template for your J! version, add the overrides to that template.
Further reading:
- Joomla 2.5: docs.joomla.org/Layout_Overrides_in_Joomla_2.5
- Joomla 3.0: forum.joomla.org/viewforum.php?f=718
- docs.joomla.org/How_to_override_the_outp...rom_the_Joomla!_core
Hope it helps,
Gez