TechBookReport logo

Keywords: Joomla!, CMS, PHP, web publishing, content management

Title: Joomla! Programming

Author: Mark Dexter and Louis Landry

Publisher: Addison Wesley

ISBN: 978-0132780810

Media: Book

Level: Intro to Joomla!, some PHP required

Verdict: Essential reading.


While there's little doubt that the Joomla! content management system is extremely powerful and can be used to create rich and full featured sites and applications, it also suffers from a reputation for complexity, with a steep learning curve that makes it unsuitable for the casual user. True or not, there are plenty of voices out there who'll warn new users off the platform. And what goes for the content creation side of things is doubled for those developers who want to go further and to extend Joomla! with new templates, components or modules. And, it has to be said, a developer approaching the platform for the first time is likely to be a bit overwhelmed, no matter how good their PHP skills.

All of which is a roundabout way of saying that this book is designed to guide the developer through the complexity and out the other side. Whether you're interested in tweaking a few templates, over-riding existing functionality or wanting to craft some plug-ins or modules, this book provides you with the background, the examples and the best practice guidelines adopted by the Joomla! developers. And, it has to be said, it also provides the Joomla! admin with the necessary background to fugure out how all of the bits (and there are plenty of them) fit together.

The first couple of chapters introduce the system and the tools required to make changes to it. It's 'lay of the land' material, introducing the terminology (extensions, plugins, modules, components etc), and also a guide on building the local environment for development, including advice on the choice of PHP tooling. Once all of that is in place you get to the first real meat of the book. Chapter three walks through the whole execution cycle, showing what's going on under the covers when you hit a Joomla! site. It's essential reading not just for those wanting to develop under Joomla! but also for those who have to administer a complex and busy site. Without this understanding trying to develop or maintain a site can be very hit and miss.

From then on you are into looking at the different ways you can extend Joomla, starting with layout over-rides and moving on to plug-ins, modules and four chapters on components. In every case there are walk-throughs of how the technology works, some examples with existing functionality and then an example of making some new changes or additions. Additionally, there is a chapter on the back-end database, JavaScript and a look at how you can use Joomla! as an application framework rather than just as a CMS. To cap it all, there are appendices too, covering PHP and object oriented programming among other things.

It all adds up to a lot of material to go through, and inevitably there's a certain amount of repetition, particularly when it comes to pointers about how different parts of the framework fit together or which things have been deprecated or not. On the plus side though it does mean that you read different sections of the book individually rather than having to digest the whole thing from end to end. While the dominant programming language in use here is PHP, it has to be said that the code is well structured and the framework constructed in such a way that even those who aren't PHP gurus can get to grips with it.

From a development standpoint the complexity of the whole framework can be daunting, so having a single volume resource like this makes for a solid introduction and reference. This makes it ideal for those just starting out, as well as providing solid advice to people who might already know their way around. Highly recommended.

Hit the 'back' key in your browser to return to subject index page

Return to home page

Contents © TechBookReport 2012. Published Jun 19 2012