Joomla 1.5 Templates Cookbook is a good beginner's title in the Packt Publishing series of titles on Joomla. One of the biggest frustrations that I often see beginner's have with Joomla is that, although there are many freely available templates for Joomla, few of them are without at least either some minor errors, or stylistic issues that a Web site manager might like to correct. What this book does best is walk the beginner through the process of making minor modifications to templates using a cookbook-based approach with easy-to-follow recipes.
The first chapters begin with an overview of Joomla's Template Manager and does a decent job of explaining some of the alternatives to editing templates. However, Carter does not describe the inherent risks in some of those approaches. For example, if you do edit your template's HTML and then reinstall that template, all changes will be lost.
Carter also takes a closer look at some of the more specific conventions Joomla! uses to manage site templates, including the use of positions to control module and component layout, the syntax for parameters for providing more advanced options for themes associated with templates, and the role of the XML file in creating an actual template package for distribution. While this information is both accurate and useful, some of it seems a bit out-of-place. For example, the information on the role of the XML file would suggest that Carter also provide some additional detail on how to create a template package. That discussion, relative to other Packt titles on the subject, is extremely light, and I think means that creating a purely custom template is beyond the scope of this title. That said, I would recommend leaving some of this information out of future editions, or would point the reader more directly to other titles that would help with this kind of task (note: the end of the book does reference related Packt titles, but I believe that doesn't go quite far enough.).
Chapters three through eight provide recipes for a number of useful revisions to a template, including:
* styling the search module
* customizing the look of breadcrumbs
* adding random background images
* working with the administrator templates
* adding social bookmarking and integrating Twitter
The code for all of these recipes is very clean, and the recipes both useful and relevant.
The remaining couple of chapters of the text deal more specifically with integrating components and modules with one's template. In addition to social bookmarking and Twitter, Carter describes how to work with stylesheets for mobile devices, solve problems associated with cross-browser issues, install jQuery, and install Google Analytics. These are all excellent topics, and worthy of inclusion in a book of this scope.
If I start, however, with stylesheets for mobile devices, it seems that the book gets a bit off of its cookbook approach. There are some relatively basic things I might do to create stylesheets for mobile devices. I do like that Carter gives some basic recipes for what those solutions might look like. They're very similar to his print stylesheets, and should be relatively easy for the end-user to adapt. Carter then goes on to discuss the MobileJoomla! extension. I've used this extension on my site as recently as a month ago. The author should point out that the latest version (0.9.6 as of this writing) is still in beta--suggesting that it is technically not ready for a production environment. The developers have done an excellent job working a significant number of bugs out of the extension, but it is definitely one I wouldn't recommend.
The last item that I looked at in great detail was Carter's advice on installing Google Analytics. In one word: horrible. Templates should describe the look and feel of the pages associated with one's site. That includes font sizes, the color associated with design elements, the placement of logos and of modules. Templates are not, however, an appropriate place for functionality of any sort. Why? I change templates for any reason and that functionality has to get recreated in the new template. It completely defeats the purpose of working with a platform like Joomla! The solution is simple: instead of copying and pasting the code for Google Analytics into one's template, create a custom module, position it, and publish it. The same advice should be followed for any of the other examples Carter provides where he suggests adding custom code to a template.
In closing, there's some good information in this title for beginners, but there are definitely some places where some serious revision--and in some cases a different approach--need to be considered in the second edition of this title. In addition, some of the conventions for illustrating code are inconsistent, screen shots use different conventions (arrows that point to specific aspects of a screenshot, for example, are inconsistent; screen shot sizes are arbitrary; screen shots designed to illustrate color are useless in a grey-scale book, and generally irrelevant, regardless). The index is generally solid, though the introductory section on Symbols seems arbitrary and incomplete.
Am I still recommending this title? Yes, there are still some great recipes in this title, and the introduction to templating is perfect for a beginner. But I also think there's more potential for this book than the current edition reflects.
Author(s): Richard Carter
Publisher: Packt Publishing
Year: 2010
Language: English
Pages: 236
Cover......Page 1
Copyright......Page 3
Credits......Page 4
About the Author......Page 5
About the Reviewers......Page 6
Table of Contents......Page 8
Preface......Page 12
Introduction......Page 16
Finding the current default template......Page 17
Locating Joomla! templates in your website's hierarchy......Page 19
Understanding Joomla! templates......Page 20
Changing your template's color variation......Page 22
Adding a color variation......Page 26
Changing your template's logo......Page 32
Selecting the default Joomla! template......Page 33
Editing the HTML template in the administration panel......Page 35
Editing CSS in the administration panel......Page 37
Installing a Joomla! template......Page 42
Understanding Joomla! template positions......Page 45
Understanding jdoc statements......Page 47
Understanding the templateDetails.xml file......Page 50
Styling for component.php......Page 56
Adding a custom favicon to your template......Page 59
Styling Joomla! error messages......Page 61
Styling Joomla! error pages......Page 63
Styling the search module......Page 68
Styling the search component......Page 71
Using template overrides in your Joomla! template......Page 74
Customizing the breadcrumb......Page 75
Styling pagination......Page 78
Linking back to the top of your page......Page 82
Adding a random background image to your Joomla! template......Page 85
Understanding Module Chrome in Joomla!......Page 92
Customizing the error page in Joomla!......Page 94
Creating a custom site offline page......Page 100
Starting your print stylesheet......Page 104
Adding a print stylesheet to Joomla!......Page 110
Typography for your Joomla! print stylesheet......Page 111
Styling the layout of your Joomla! template for print......Page 113
Styling content for print......Page 115
Styling links for print......Page 123
Preventing common bugs in print style......Page 124
Introduction......Page 126
Understanding Joomla! administrator templates......Page 127
Installing a Joomla! administrator template......Page 129
Changing the administrator template......Page 131
Changing the logo in an administrator template......Page 134
Changing the colors in the administration panel......Page 136
Securing the administrator URL......Page 138
Changing the icons on the Joomla! administrator dashboard......Page 141
Joomla! administrator template icon graphics......Page 143
Introduction......Page 146
Integrating Twitter with Joomla!......Page 147
Integrating AddThis social bookmarking tool with your Joomla! template......Page 152
Embedding YouTube and other videos in your Joomla! website......Page 156
Configuring the DisQus Comments extension for Joomla!......Page 160
Integrating Facebook into your Joomla! website......Page 166
Adding an iPhone icon......Page 172
Designing stylesheets for mobile devices......Page 174
Specifying a separate stylesheet for mobile browsers......Page 176
Creating a mobile stylesheet......Page 177
Installing the MobileJoomla! extension......Page 180
Including a JavaScript file in your Joomla! template......Page 188
Tips and tricks for minimizing page load time when using JavaScript......Page 190
Maximizing backward compatibility with JavaScript......Page 193
Joomla! template......Page 194
Installing the jQuery JavaScript library in Joomla!......Page 196
Creating an image slideshow with JavaScript in Joomla!......Page 197
Introduction......Page 202
Comparing your template across different browsers......Page 203
Validating your template's (X)HTML......Page 205
Validating your template's CSS......Page 207
Using conditional stylesheets in Joomla!......Page 208
Fixing the double-margin bug (in Internet Explorer) in Joomla!......Page 211
Installing Google Analytics......Page 215
Introduction......Page 218
Customizing Joomla!'s home page with module output override......Page 219
Customizing Joomla! articles with component template overrides......Page 221
Creating a new module style (chrome) in Joomla!......Page 224
Index......Page 228