Joomla! is one of the world’s top open source content management systems, which enables you to build websites and powerful online applications. Out of the box, Joomla! does a great job of managing the content needed to enhance the functionality of your website. But for many people, the true power of Joomla! lies in its application framework that makes it possible for thousands of developers around the world to create powerful add-ons and extensions.
This book will guide you through the complexities of implementing add-ons, components, modules, and plugins in Joomla! 1.5. If you feel that you’ve mastered the basics of creating Joomla! extensions, then this book will take you to the next level. Packed with expert advice on all aspects of programming with Joomla!, this book is an invaluable reference guide you will turn to again and again for your Joomla! development tasks.
The book starts by explaining the structure and design of the Joomla! Framework. Then we move on to extending and storing data in standard fields and dealing with multilingual requirements. Further, you will discover best practices, design, and coding methods for Joomla! components, modules, plugins, and other extensions. Along the way, you will actually design and create a component, module, and plugin that work together to add functionality to the Joomla! framework.
Finally, we will discuss advanced methods for rendering your extensions more robust, secure, and professional.
The most comprehensive, up-to-date, and accurate developer’s reference for Joomla!
Extend the power of Joomla! by adding components, modules, plugins, and other extensions
* In-depth guide to programming Joomla! 1.5 Framework
* Design and build secure and robust components, modules, and plugins
* Customize the document properties, add multilingual capabilities, and provide an interactive user experience
* Includes a comprehensive reference to the major areas of Joomla!’s common classes, variables, and constants crucial for creating Joomla!
What you will learn from this book
* Understand the structure and design of the Joomla! 1.5 framework and how it operates at its core to develop efficient and well-designed extensions for Joomla!
* Extend the database conventions for the database schema and common fields
* Access and manipulate the database with the help of JDatabase and JTable classes
* Design extensions that work within the Joomla! structure
* Incorporate User, Session, Request, and Browser classes in extensions
* Organize your code with the Model-View-Controller (MVC) design pattern
* Build your own components to manage and present a specific set of data
* Enhance our component by creating a module, which will add new functionality to our frontend
* Modify your system’s functionality without the need to alter existing code
* Discover how to add pagination, ordering, filtering, and searching to make your extensions more user-friendly, and increase the chances of having successfully created a commercially winning or freely available extension
* Improve your extensions by customizing the document properties, adding multilingual capabilities, and providing an interactive user experience
* Access remote third-party services from an application with Joomla!’s API (Application Programming Interface) and web service
* Master the techniques of error handling and access control to prevent malicious attacks on your systems
Packed with expert advice, working examples, and tips, this book is an essential reference guide that you will turn to again and again as you work with Joomla!.
Who this book is written for
PHP developers who want to understand how Joomla! Works, with a view to advanced customization or extension development, and who want to learn how to work with the Joomla! Framework.
About the Author
James Kennard is a computer programmer. He has worked with various PHP and MySQL applications, since 2002. He quickly discovered Mambo/Joomla! because of its flexible extension manager. James currently maintains one open-source Joomla! component, which has been translated into over fifteen languages. Moreover, he has plans to build two more open-source components. Examples of his work can be found on his personal website webamoeba.co.uk.
Chuck Lanham began his career as a database software engineer with Burroughs Corp. He later worked for Informix Corp. managing the database tools development group while serving as repository architect. He has founded and managed two successful software development companies, and taught college courses on database theory, data communications, and computer technologies. He has also managed the global development and deployment of leading CRM and CMS systems for many Fortune 500 companies, and managed the development and deployment of some of the largest e-commerce websites in the world.
* Paperback: 560 pages
* Publisher: Packt Publishing (June 1, 2010)
* Language: English
* ISBN-10: 1849510520
* ISBN-13: 978-1849510523